/*
 * Copyright 2013-2025 chronicle.software; SPDX-License-Identifier: Apache-2.0
 */
package net.openhft.hashing;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;

import java.util.ArrayList;
import java.util.Collection;

import static org.junit.Assert.assertEquals;

@RunWith(Parameterized.class)
public class XXH3Test {

    @Parameterized.Parameters
    public static Collection<Object[]> data() {
        final int maxLen = Math.min(XXH3Test_HASHES.HASHES_OF_LOOPING_BYTES_WITHOUT_SEED.length,
                                    XXH3Test_HASHES.HASHES_OF_LOOPING_BYTES_WITH_SEED_42.length);
        ArrayList<Object[]> data = new ArrayList<Object[]>();
        for (int len = 0; len < maxLen; len++) {
            data.add(new Object[]{len});
        }
        return data;
    }

    @Parameterized.Parameter
    public int len;

    @Test
    public void testXXH3WithoutSeeds() {
        test(LongHashFunction.xx3(), XXH3Test_HASHES.HASHES_OF_LOOPING_BYTES_WITHOUT_SEED);
    }

    @Test
    public void testXXH3WithOneSeed() {
        test(LongHashFunction.xx3(42L), XXH3Test_HASHES.HASHES_OF_LOOPING_BYTES_WITH_SEED_42);
    }

    private void test(LongHashFunction h, long[] hashesOfLoopingBytes) {
        byte[] data = new byte[len];
        for (int j = 0; j < data.length; j++) {
            data[j] = (byte) j;
        }
        LongHashFunctionTest.test(h, data, hashesOfLoopingBytes[len]);
    }
}
/**
 * Test data is output of the following program with xxh3 implementation
 * from https://github.com/Cyan4973/xxHash

#include "xxhash.c"
#include <stdlib.h>
#include <stdio.h>
int main()
{
    const int N = 2048 + 1; // 2 full blocks
    char* src = (char*) malloc(N);
    for (int i = 0; i < N; i++) {
        src[i] = (char) i;
    }

    printf("class XXH3Test_HASHES {\n");
    printf("    public static final long[] HASHES_OF_LOOPING_BYTES_WITHOUT_SEED = {\n");
    for (int i = 0; i <= N; i++) {
       printf("        %lldL,\n", (long long) XXH3_64bits(src, i));
    }
    printf("    };\n");

    printf("    public static final long[] HASHES_OF_LOOPING_BYTES_WITH_SEED_42 = {\n");
    for (int i = 0; i <= N; i++) {
       printf("        %lldL,\n", (long long) XXH3_64bits_withSeed(src, i, 42));
    }
    printf("    };\n");
    printf("}\n");
}
 */

class XXH3Test_HASHES {
    public static final long[] HASHES_OF_LOOPING_BYTES_WITHOUT_SEED = {
        3244421341483603138L,
        -4302098779834749733L,
        -2998166160713018281L,
        6864218090047839419L,
        6979084321315492338L,
        -5731546056562700354L,
        -6460328875922888956L,
        923809989133364073L,
        4187271766389786872L,
        -1629980255024596516L,
        -6095164084758671497L,
        2086176710598203789L,
        6543284205211650379L,
        -5213522776729965383L,
        5545158833176453687L,
        6191585008302141506L,
        -8983023575487778597L,
        -6993173599622040792L,
        -679721864292929835L,
        6982591615625134866L,
        2917394212576059053L,
        -6639923505334063205L,
        -2362153139612899683L,
        4776590923197089330L,
        -1506670496010913414L,
        -2647877581130602390L,
        -3024194937172852654L,
        -6786232254807398843L,
        29867523197922776L,
        -4755612273762186448L,
        7027486771791057426L,
        5707990981978323197L,
        3829001002278603781L,
        -1833995589090992552L,
        -2859822223207566521L,
        -822061951152501107L,
        6172313773566651166L,
        3002688263104272481L,
        2442729726468942826L,
        838920225343106725L,
        -3625228911788322244L,
        -3085758516746786139L,
        -8838726273629984649L,
        147628805604629229L,
        -8609901492927370359L,
        2523698187551014389L,
        6168573373090741088L,
        -1129058501854041166L,
        6287935907341083849L,
        7111303459234964792L,
        2178159668141251214L,
        3355500812482858732L,
        7998592630692471773L,
        -3657590562873574961L,
        -6707964006400412490L,
        5984672195388902266L,
        -4866191761727097338L,
        -3867761180105420740L,
        5010507633288345206L,
        -6360606695257557456L,
        891304432194930768L,
        891409307892263904L,
        -4666213895286452910L,
        -6150244752716240152L,
        7027844749552840021L,
        7577525643630617296L,
        -2909908046638187264L,
        1269898915928975170L,
        -1296685705337969741L,
        6880380907958913107L,
        -5157697080261523794L,
        -2384830554205610823L,
        7117698599495882683L,
        8436634904183317409L,
        -8685705461888375606L,
        -2099116977851507310L,
        7784639995868301609L,
        620173983152449558L,
        7875300522364621790L,
        -8571663595578279581L,
        -6074103631611676465L,
        4991809556790719000L,
        7182703058112323703L,
        6700847687881865453L,
        2471686449789799931L,
        5615843466129961201L,
        108638713672822205L,
        3583360813653880832L,
        4747956906537059928L,
        5998273219519720430L,
        -8227785307205256168L,
        -7813674951517583442L,
        -6588167816065898573L,
        -6862603585040654361L,
        5081695234398607736L,
        1329474798079286264L,
        2849157965221752315L,
        -1791866940674927372L,
        4332646258279960296L,
        4180229147886927001L,
        22042537110060316L,
        -2696513067094881964L,
        4479930798836342597L,
        7717940613376663979L,
        6494116526350833911L,
        -197304122858742249L,
        -4396092174831810083L,
        289832483284799872L,
        -1407793616753546142L,
        8107749310172792421L,
        -634728965402563086L,
        -5703942985817925313L,
        1530829577509875692L,
        725468970373613536L,
        -8861952843133984162L,
        2677458900969433422L,
        3204987178703259401L,
        -5308372023803773091L,
        -4001659458034098463L,
        -4307920379982142578L,
        -7679947731286800682L,
        893843933290517983L,
        4059405294108459720L,
        1831062127804751133L,
        -2762239301578822450L,
        6439416643289274311L,
        7794216615102176353L,
        1300299527667998511L,
        -8807326403944725397L,
        -1407864491810865574L,
        5562548832393267847L,
        -1909668463603883104L,
        -3001908439859224423L,
        -8229811775093055754L,
        -2185505997709248158L,
        8747474804119761845L,
        3375976894941005122L,
        -8687541524345519584L,
        7475418969225723061L,
        1090519453973870407L,
        -8039787237657230770L,
        1464043301476531850L,
        4392840094176543368L,
        -9069431037609626595L,
        184117852034042369L,
        3048613549567428513L,
        8360545369892314479L,
        4218067793502522363L,
        -1984361661054820977L,
        3359102789277797744L,
        7846237042486223698L,
        8441054814755521322L,
        -6067811722142115057L,
        -7157356563671886865L,
        -2021770978571166827L,
        2181025843643822270L,
        -544448869202488473L,
        7057264048203590026L,
        4363323697043225181L,
        288118730444504008L,
        6623265038156431800L,
        -1346676098681766085L,
        6693111459824679536L,
        -5826625922074103454L,
        -3486949479332473670L,
        -5491430220943863042L,
        -7571085429759204806L,
        -5040253774339356206L,
        3305212073815689334L,
        -4916812550925428252L,
        3791981966901325707L,
        -122684436810232675L,
        -4859495698099370447L,
        -7070496757192133073L,
        -868377069569577871L,
        8419145116270703784L,
        6800486273015600197L,
        4633342516797787668L,
        -1661577990952520136L,
        -334342790235531239L,
        -8872817819424402897L,
        -409486044664079154L,
        6190926389261136345L,
        -1300830024987992860L,
        -3395638269793024332L,
        -8493538135787539363L,
        -6621335634487712846L,
        1973828869629126484L,
        -8925429074145354136L,
        -2678123694384376779L,
        -4225602364907809934L,
        -7257068922279808299L,
        -7485343360991292969L,
        2406538583069093177L,
        926637182534700777L,
        4630670481086444853L,
        7851742083103622018L,
        -98392444236074312L,
        1142322156420818107L,
        7462750549553202851L,
        -852719212082297085L,
        1478659643974205762L,
        -6521398709638030532L,
        1345928530210989700L,
        -3363927467796334767L,
        -4501085897120438635L,
        -1855175868195079840L,
        -8957269249266743558L,
        -5499424421497234822L,
        6823468430111213664L,
        -8349332096263306503L,
        -796191064979922279L,
        3070550474559678794L,
        -7237539936935226606L,
        -1467576285689886091L,
        8020665312084081577L,
        6549665319606165521L,
        8265205303228562057L,
        2959656348340404166L,
        3479620626361283295L,
        -1809040706699436602L,
        -6118995013506825485L,
        -3703429629123416796L,
        5314878427138221245L,
        -3374786619071663812L,
        -6020893708387338112L,
        -2099692294850961452L,
        5628155794800251850L,
        -4036147416511180551L,
        -7941600054572002747L,
        -7483400491927447614L,
        -720567278261368781L,
        3314031855271606298L,
        -5471631794645557473L,
        8887891228392664673L,
        -7960828123610685614L,
        -766265380117391950L,
        -4017904512890559451L,
        3478074185490226921L,
        -7553920981498126005L,
        3988562325861820517L,
        209643423615708418L,
        -2464819451665246158L,
        -8631718977760664612L,
        -4893221336143393409L,
        2390264798730683615L,
        -8300749389255144164L,
        -3549775289570958064L,
        6514441262456966668L,
        -7301663820335638615L,
        4181559756778549411L,
        6215253578855337690L,
        -7323335092456459405L,
        -1860577032441476467L,
        3644299936077808538L,
        -5161174126835724701L,
        -7779787747613135503L,
        -3446338450597548406L,
        -2662609220502962318L,
        208946340318274486L,
        922869894074454969L,
        -8428909140908329623L,
        -6875524699939418906L,
        5154230294972327697L,
        -5868880138852165350L,
        -2697155020815738737L,
        6278899766774254324L,
        -6124877505863871039L,
        6113186870348198684L,
        1328797232741421065L,
        8936960355443139766L,
        9069883653377839816L,
        -6698244186639407697L,
        6633988379507542818L,
        4243888593320380368L,
        1299920470993756698L,
        2315187937474071861L,
        806120923801759332L,
        -8537792935927015380L,
        -751623313460664870L,
        2455098182130434513L,
        -3041072155357054618L,
        -5209258140949481980L,
        -7784651030341623624L,
        -8624281235662545565L,
        -5185374153462168974L,
        -8728622305551122108L,
        3633316488676598179L,
        2341850275669250720L,
        8998800880957295269L,
        -2791108801739767859L,
        4207716787796156879L,
        -4083554261407892809L,
        2977762250156739855L,
        -6066243213313847782L,
        -3134677742513834402L,
        -5231660756514911289L,
        -7916346081138370244L,
        9105509708951212631L,
        -3071680532260795719L,
        -3152428524199455707L,
        -5276930195233923125L,
        1981446637702558747L,
        -8822786060285469479L,
        -3086453182842996354L,
        -7521798164704108718L,
        -7460429880600038351L,
        -5031515429775225415L,
        5662627828449328757L,
        2804157867790593789L,
        -6183934836359652529L,
        2425310972806241292L,
        -7877162957672040682L,
        -4575453773921540745L,
        -6152892230011262930L,
        -1554429781063399588L,
        6395550633581619922L,
        948199150697514149L,
        4123518706442132507L,
        -8620024481834864148L,
        -4627311960537433998L,
        -1517263476517287336L,
        3087156144310177979L,
        802387854806242344L,
        -8223164854162179626L,
        -8876883825341271093L,
        6189924694943538938L,
        -558048344469199000L,
        -6388815497071843014L,
        7970082794223216108L,
        8943146030443257086L,
        1919558538884824162L,
        -5413821296846136841L,
        8482255996292420949L,
        -2059351044571046226L,
        8122315934009425936L,
        -6002133579485340781L,
        6439465961707132723L,
        2763117897158909339L,
        4241846593057682886L,
        -3156374353704014890L,
        3611310604513156987L,
        2539868227324188707L,
        -3160603853021599046L,
        -6694565052629228305L,
        -2829087677596299075L,
        -3855421753196086451L,
        8353874633819013271L,
        -2485914493713180581L,
        2924901647540244351L,
        140830235769158231L,
        8924525771772034372L,
        1991645829771754924L,
        -6409133430531739321L,
        -2477349252564343349L,
        7592298137540200578L,
        -8706120837264950112L,
        2330049856518978017L,
        -1333715564956417750L,
        5321303278236129003L,
        1316603583801631000L,
        -2052093890021786856L,
        -2212919092132307727L,
        -1138248150179747101L,
        -7297574785915472699L,
        3159392081609537393L,
        5438969032594710113L,
        -1117946266762888661L,
        -3513962250060316650L,
        -95470470775096400L,
        -928547845419412355L,
        3064209748165139149L,
        5570740544374382296L,
        -4848606292970499536L,
        1249733847255258336L,
        -9081876379081045111L,
        -3178350430540128617L,
        4580722282117591455L,
        4910338723691444614L,
        -3861107435455294057L,
        2455351552393139588L,
        -3098045343671378301L,
        1276702104227748441L,
        -8725606894849543465L,
        -7043526197674754455L,
        2543751490914779898L,
        1111188191726666289L,
        3299681536744686092L,
        -4968407975804173061L,
        -8443232222924958642L,
        2692856020311995538L,
        -7295992543900831720L,
        -835426980056055153L,
        -7189216512060259212L,
        1546667140862204220L,
        -5157738526808785307L,
        -8400112152363165211L,
        -2562446629278342489L,
        -3984312152746163924L,
        263973571859894620L,
        5863738959863392730L,
        -3750469576779228200L,
        2859093520615066384L,
        239574671716835044L,
        1758244848125395099L,
        4692926060224877180L,
        2328985435627410056L,
        -712944964417726519L,
        7575628018175957835L,
        -6461647485226712981L,
        -9175844658802936237L,
        -1791894645853433273L,
        -3209291319104719345L,
        8435774909159574457L,
        3068904622159492539L,
        6405574310234631665L,
        -7236310029621050895L,
        1939741827857698370L,
        -2711876483320863546L,
        -5191337944005182792L,
        851301927202074099L,
        7817558216393575797L,
        -924173671401578135L,
        -8870424728276452684L,
        -5612135981154918473L,
        5352840780989627332L,
        3115501649750915797L,
        -7282764488136203731L,
        -4410122159075968274L,
        -5112841868993719465L,
        1606611627835962209L,
        -2564625118517656156L,
        -7347999176364584697L,
        -7520586016175454443L,
        -3582872246453049220L,
        -7208670274224679141L,
        1407185043226639926L,
        5548472899324259498L,
        -3424704481698318306L,
        -8898045228081312865L,
        -5032961205984329240L,
        2319704565344125424L,
        -1858090959206557106L,
        -1847512527385111193L,
        -218817722784924760L,
        -4644538017574761086L,
        527762499588866419L,
        7682925460546142196L,
        2618673582975102782L,
        -8339358073633623035L,
        4632344075623474881L,
        -2634725682046056737L,
        3264353773883015103L,
        3450256920483368564L,
        -8453373497678191816L,
        4324811352547234228L,
        5231611966727557421L,
        3935063678731059941L,
        6338309551930394802L,
        6622686033142507173L,
        -5278373537512798709L,
        -9063940204441257539L,
        -6333833756325058415L,
        3799491381076234981L,
        5050905817684546674L,
        -796624655126841621L,
        8334872366472578300L,
        -5288752267258476166L,
        4335956913966038392L,
        -2247074774901543705L,
        8474035569080943503L,
        -3170167932314701995L,
        6999756768956410897L,
        -4451078577344071588L,
        -8433054951584831409L,
        -2640652121643463448L,
        -7045594934288710931L,
        -4036935141669708886L,
        -7734407512972194081L,
        2053541054148333962L,
        -566653752431971002L,
        1898804146829115409L,
        8507984725723339263L,
        -3742788731083462619L,
        -614166854038590657L,
        8147682807535759575L,
        2813322236228401990L,
        -7697111451322995338L,
        8023578719528819358L,
        -1666048881205334172L,
        2861705383918865808L,
        -2067264870309406817L,
        1544932780962992751L,
        5752963315823730718L,
        5563418456763501584L,
        -956763705026909993L,
        -6723021793890249884L,
        8199491799885937348L,
        8254326245904567972L,
        696534455436688862L,
        -4526166123204455007L,
        -1244479971115743946L,
        -4712028527008594695L,
        3845317619056596538L,
        1397508695414938292L,
        5199778266100306999L,
        7649610185133409821L,
        -7736979936936405855L,
        -1871499676764587199L,
        4089210433244498057L,
        -5319342193649020117L,
        6510328602034064204L,
        1177990759783856649L,
        -6211536889696831922L,
        -2806444732697667079L,
        -5534324430749159010L,
        -6189402282341917673L,
        6327177260956086170L,
        -8199327532062722025L,
        1757637089703623521L,
        -1083020196125888231L,
        -4027554827881183115L,
        2536452110533397141L,
        -5283309880767903892L,
        -8726185014741079280L,
        5870565960746070417L,
        -5981985584772708231L,
        -1932877698882443840L,
        -1002343255004640521L,
        4369245457815499473L,
        574307157338267836L,
        -9022123090729501652L,
        289683520338718123L,
        -5791631171477648402L,
        -7088072188409060385L,
        -4659987534525277948L,
        -6573587402478059370L,
        -9147189283662432041L,
        -4621406226758810332L,
        3827992897413425855L,
        8237187128340177815L,
        -2575127860924571660L,
        -5807831166865245102L,
        -5362714198312494492L,
        4800564949032048849L,
        6232971559544384156L,
        5346264270546834545L,
        4418021854956695145L,
        -2503709442294180811L,
        -6705525727229877941L,
        2807916716409994404L,
        -140901784876025870L,
        8341454749980902529L,
        -1877846120130857988L,
        -5151008775080326365L,
        4141948371168606708L,
        -2991396496641036974L,
        -8231846204849830109L,
        8817247101288954387L,
        8987037987198023072L,
        -3653961272252403667L,
        -5540876112254432380L,
        6630760576601451124L,
        3952853764187760519L,
        -2752207231177565438L,
        -8990910782429153994L,
        275029084438740989L,
        4377008995333363792L,
        7821963094129670639L,
        5910345261804604591L,
        -4676534586425310858L,
        -893427896035022872L,
        -5107326322974521170L,
        5928147272454832468L,
        -6838714257802993131L,
        3828181535474040080L,
        108432455104664877L,
        6134860905554719891L,
        -9006906057728028416L,
        -8785087250130628623L,
        5107258923997586783L,
        -4184502077870950738L,
        -4196994343382319067L,
        -3602525630290645804L,
        -721602986806918388L,
        -685749048932716724L,
        -2226124441764103982L,
        -8444470437189672337L,
        5967905323104782609L,
        -774529365691330376L,
        5317411683068394421L,
        8753729036148149823L,
        -2600284926580864832L,
        1501264369203023713L,
        -5589106565383836539L,
        2671769607792597675L,
        -571916257780128106L,
        -466398102722097434L,
        -8668321984643614166L,
        7631202114905008803L,
        -8647922451448787023L,
        8025381490498356948L,
        6049280950696679244L,
        -7696482417187458362L,
        7140438358861456746L,
        -4921885565559803566L,
        -7027307783313071980L,
        4879598629629415952L,
        -7342155744245645378L,
        -2263378697656156016L,
        3707257119850556629L,
        2267112971575522392L,
        4213162373130191016L,
        8934898250536865564L,
        -2149765792894599153L,
        -5375160376931751557L,
        2196544121130659101L,
        1698916734136113996L,
        3433172695894846834L,
        -2849259564218003615L,
        3254138956861413927L,
        1285929622626453198L,
        -2349127797610817522L,
        -1191286947825336074L,
        -9055971338481310193L,
        -3525928115330914396L,
        -3227633136719463166L,
        -133501853014392460L,
        1099153576792978915L,
        -648473507797745243L,
        -8947946509829984393L,
        -183277647411867477L,
        -8972836557830117056L,
        7599024178448012477L,
        -4558685557381095142L,
        4767843848744584145L,
        -1522308275842184404L,
        -8584574042672861403L,
        -1734332735592240813L,
        -5832090116698921823L,
        -8717779938268738600L,
        -1881355893097809021L,
        7715529933819950784L,
        -2289162375063823266L,
        5628801095532857454L,
        4961594313236250573L,
        4618832900030681591L,
        -2860026598356511432L,
        1961029532371905567L,
        -7427116119564073711L,
        -7663272674507523073L,
        -1432342159197328837L,
        -6656742466964663442L,
        1884610673731472834L,
        -3810094228658892044L,
        -6616291605664442115L,
        -6089433736056798518L,
        -7473225570871869756L,
        -2962461410122376636L,
        -7732736326487208707L,
        -4443012182604465346L,
        -6157220788020380465L,
        4600227015044805999L,
        4469639125734518912L,
        -7792518910888390519L,
        1994555386333163764L,
        4369373061497876631L,
        -4738249058452865067L,
        -5995135073617675417L,
        8575145712582277328L,
        -3326852669647946366L,
        -2007891227481667403L,
        7761466597038557448L,
        -7224144129768088459L,
        -6066361559768252258L,
        -4068105427650671702L,
        -5560889521429203904L,
        -4762527649365520713L,
        2694767757294725688L,
        -98412761475871782L,
        -1686751510820366009L,
        -8638747288926132295L,
        -3606421426295459375L,
        703911580424568845L,
        3806874684410471199L,
        -5118211203482914183L,
        3783835693585708905L,
        -4147496567901501893L,
        4328139758484363106L,
        3028068134370267202L,
        -5966389813687232408L,
        2195469898148267913L,
        -3080166474377317430L,
        6412533502918649688L,
        -4801061500654703956L,
        -554194900129906123L,
        1486000469436139740L,
        -6971589411333019409L,
        2647463349908157318L,
        -6754094203714628854L,
        2314399046579224435L,
        -6177383374280917075L,
        -5619632493646738964L,
        -7301831206207675015L,
        -5527516975398904813L,
        -7206298956882517419L,
        -1535337994919517848L,
        725107219148423471L,
        1938195538047669437L,
        1028829726878266547L,
        3981352596771855719L,
        4637441575637536278L,
        -567364300216533096L,
        4215820779392244698L,
        5791138156269639416L,
        527001488112788484L,
        -4390338125863921979L,
        5557055272452535368L,
        -205316410586789577L,
        6952133288635206796L,
        -7457518070084443694L,
        2002018537802900078L,
        1561023860546606398L,
        3006183850758749007L,
        -1361037422909233361L,
        -4203933835330884180L,
        7500988945823273736L,
        -3010872765453549672L,
        -3781827987408697259L,
        7460277383018710734L,
        5250710645655626569L,
        1109553850343924028L,
        -6498085059809326090L,
        -5879222670885240061L,
        6210613100795379620L,
        -5759675374559290972L,
        2824738880545011656L,
        3213468672819532759L,
        514328750496380347L,
        4470285007717204101L,
        2269240343629252129L,
        8714859525098129755L,
        -6932578361476642118L,
        3219949239213817308L,
        -974585298959970878L,
        6482527911604968876L,
        889153561428168470L,
        -8207616222981108363L,
        2386860797138412452L,
        -6749686321997906685L,
        -1105424552884318985L,
        -3137963539903752699L,
        -5296550634024189868L,
        2919221292190747486L,
        -3991521756182858814L,
        3802413126716557908L,
        4556158013211621930L,
        -1956520472596138305L,
        -1667618395239727751L,
        -4948155010712448139L,
        -2667546434479018044L,
        -5192951416537530780L,
        4474564860866849514L,
        6795504197096101870L,
        348555520492747776L,
        -9152654684800879935L,
        -139520144005307559L,
        8655115078308054377L,
        4640578432082008138L,
        8526214307008571064L,
        -7079091919397494753L,
        -4852301075482608956L,
        -6726381834527599283L,
        -467175742480032731L,
        5092513639393893997L,
        -916781769295487406L,
        -3306005301217276910L,
        5711239369216246603L,
        7411369067342514714L,
        -137089609471843551L,
        2197853544547148264L,
        6994895994975015585L,
        -3993584670641567357L,
        7324113989979846776L,
        4848201612974985071L,
        -2319141888027790806L,
        -7727572350242351429L,
        3611228677421118756L,
        3254031939911056022L,
        1315862663037871882L,
        2762719496333050774L,
        2441476684596910583L,
        -1751985778109806355L,
        3156518557955714028L,
        -7474525109128332157L,
        -402634945481420093L,
        3711042493776857096L,
        -526618219268616930L,
        -8956423818433397438L,
        3318951429850234648L,
        -4065748355754556535L,
        -2974465318794034149L,
        9156201933336414671L,
        -1224004278953882958L,
        -5567810197150710613L,
        7645667176564158039L,
        7437954892140634061L,
        8595047667824297631L,
        -4227841629446459104L,
        -4073313779073810355L,
        764623093768368301L,
        4502563456929761688L,
        1027370723462817766L,
        7668869338814612684L,
        -4780350365503382825L,
        -6389061999435806787L,
        -2133237830821026919L,
        -618977682776693149L,
        467656057704319257L,
        -6754479852919060751L,
        -121796624546305099L,
        -6164861615484187016L,
        -8568598162483564153L,
        -8182644091745100549L,
        -3989631051916738549L,
        -3812515520109109155L,
        5458479505950940580L,
        -4068063356781230185L,
        -2830766632873229698L,
        -7592354330098913572L,
        5323147076973602219L,
        462800867816435413L,
        4002154584204048905L,
        -803837213195276249L,
        270846859760410932L,
        339186719055655409L,
        -1681073433226249949L,
        -3172364168133842187L,
        4471576722877991666L,
        5796602822306813285L,
        -7918394505018135767L,
        -8099706435104488972L,
        3225305587851029418L,
        -4366886220054887809L,
        7732358946751522729L,
        -228816160482375387L,
        -6429545033940023762L,
        -4874531170284168803L,
        -7919754354938613725L,
        4818550076091948962L,
        3907701057522316102L,
        -2162109673539899314L,
        -6296577330837677905L,
        -5038523314786213767L,
        -4182256071671167089L,
        2347804671767305901L,
        8781747195783722684L,
        5464112250608435856L,
        270499223000052613L,
        5387476652934255975L,
        -2665753069813354951L,
        -6640316903187366435L,
        5182130073111288069L,
        3324630100168604545L,
        6092224834024861844L,
        -7314979478990434840L,
        2475323565628074124L,
        3744881942029260381L,
        -4468245448047387416L,
        -2514532843437356755L,
        -8460931029051770120L,
        6058982121000846509L,
        -5771467892492359246L,
        4284427580292476574L,
        -4502826197302040607L,
        -8909965133023702444L,
        -5152825667036557377L,
        -9001319942906464381L,
        8783326653870239059L,
        7169538748654303504L,
        -7206711339673245443L,
        -959892259265562431L,
        -1673323329893911437L,
        -5827914418805049723L,
        -820830695253715046L,
        -5782181341435499931L,
        2663734005752892035L,
        6987511185271585413L,
        1292089443730939651L,
        5587170596809636807L,
        8237809229146017083L,
        -2235781308356196513L,
        5423273201690025713L,
        -827014178432784464L,
        4410575469603649344L,
        -4472642034035214939L,
        5360193252716249224L,
        -4572235983836835323L,
        -5433653902594010857L,
        4134790485921001466L,
        4485288889906709425L,
        1685824402735587758L,
        6091818520229922279L,
        -212523426857309616L,
        8873690209863775893L,
        -8812432523459654235L,
        8103047819338531286L,
        4614534509558570387L,
        4229082172984667846L,
        5484460792243331111L,
        -2385763800014084246L,
        7030455160712580607L,
        -4237997225503760625L,
        -8124291737715145061L,
        6327782024255912635L,
        -1059957986215325879L,
        -4603394046555224246L,
        -412280426794415941L,
        -3912022758691365061L,
        8274283857906326279L,
        -6679687570538459747L,
        -6155809572519276859L,
        -341344339192464824L,
        4137861550441588415L,
        -6618940267671493988L,
        -7291675023689911653L,
        -7953871974818004574L,
        -397153165830243551L,
        4399741193484513820L,
        -7321827371527026850L,
        1338155597001139997L,
        -7945100475342274903L,
        4522579580699730675L,
        -1777997817650119183L,
        -5064101783437092203L,
        1113553310062801693L,
        -5709720543205442481L,
        772882345518435045L,
        8903336589907078605L,
        -8789465120959251318L,
        -7834044567177051539L,
        1770279151425541006L,
        -4941283968572768930L,
        -8127231558741248281L,
        737747628416269099L,
        1574449851957266285L,
        -471282776174276539L,
        6739952936193376447L,
        -2424982200476312714L,
        176022186483763915L,
        347356729555692814L,
        7550980861784622262L,
        -6474882761637742162L,
        6769254801287215843L,
        -7346044586598503820L,
        1815045574884249754L,
        -4240219227462571370L,
        -649819224919779208L,
        -3697860834931443057L,
        4209607762757612835L,
        5512379227441488333L,
        2554702396243693813L,
        -33063197416101018L,
        6204387436027047110L,
        1121696558750946811L,
        -67713675745955613L,
        2900236341998750711L,
        4072627124871947361L,
        3411250942283240973L,
        3459019187218245290L,
        -4931935198846519054L,
        8420402881327935528L,
        -2700073972687127894L,
        4135622085465759778L,
        3115364578959809417L,
        7905907040079822152L,
        3117202331600018366L,
        -6912405766950946927L,
        -4526890208931001416L,
        -8362196017109360491L,
        7990163642449120866L,
        8921333090931858791L,
        -7835160532401884454L,
        2597345228860385242L,
        -2019901582135813985L,
        -734731610197007345L,
        -4478738615320414333L,
        -7971363857175568029L,
        -4550695664824391599L,
        7004896942426055925L,
        3243444764663891458L,
        8221182849925835178L,
        8413639868002181795L,
        -7599742913553767497L,
        -4861871033227348667L,
        7180813616057727196L,
        4110358466985293134L,
        -9163301540202343656L,
        7407431836530456233L,
        7168833492994704184L,
        -3225184215180636592L,
        8550286352383434501L,
        -4037242040051553894L,
        -7019860459089371337L,
        6499568859919656194L,
        -6517870390876058597L,
        -8816903563531564452L,
        -5488567103311833696L,
        7162975208461021799L,
        3231150263108104601L,
        -6472825090155306196L,
        -7112727281349161724L,
        -8908480908774446053L,
        -162138742916032914L,
        -4934765719133081654L,
        -5383597847234182085L,
        -1457750799424768103L,
        2062788467226997042L,
        5195212083662151172L,
        -7086725269988157115L,
        3216790230270684188L,
        -6772983200597124262L,
        2139536380152189149L,
        2783400616608816134L,
        -6309269121238725342L,
        8703327852945446994L,
        5986578967392046329L,
        -8686234791137218952L,
        7147175926193618258L,
        2812520130705527307L,
        1012516456501023939L,
        7796658848573086967L,
        2642184550087192362L,
        2521303561751617614L,
        -2372355039844318123L,
        -7982908463432899233L,
        -4773586301827797121L,
        4040904044293393487L,
        -142670900232845920L,
        -10691804562559377L,
        8453630879397574208L,
        5612078661433375152L,
        -3592401183831123809L,
        -1194636486876965628L,
        7144612844993582305L,
        5952025594559102453L,
        7768859735998504182L,
        -9046596974248194873L,
        -6171084369920910835L,
        1781418400960307869L,
        5081999630281512875L,
        -5147831879244994539L,
        -6245492622672631422L,
        -8665204890652827995L,
        -1175718303513980672L,
        8885449897820005156L,
        -328163209321586593L,
        -1445525508305375763L,
        -2100999238041350502L,
        7410786050561217868L,
        -7914164711220348362L,
        -2906200250494490361L,
        -867790952312765711L,
        5887767909251264450L,
        -5789450489200739242L,
        1662159886119924244L,
        5012361370472355454L,
        3429745384914079292L,
        -4445208736020219814L,
        -5413763295704138557L,
        839374495111075513L,
        -7648977736915073173L,
        -3664832624688924839L,
        7158412277573249226L,
        7779305491962558566L,
        8039313349173431072L,
        -4220847824862505833L,
        -1939839155925934724L,
        -8034010027834756500L,
        8475758752811450501L,
        1099214246266343746L,
        9186354033975902114L,
        2335697942068596836L,
        5125601667360226370L,
        6606318187238773479L,
        -1182364933194642155L,
        -1282696136769309305L,
        1154559731683162717L,
        2886049233756462774L,
        4825677492212933300L,
        -9121350732551109877L,
        -877752678277742358L,
        -3266764465431864389L,
        -1914199636241277795L,
        -4687907120417383299L,
        -474253911596715394L,
        -7075290400477487025L,
        8134957124130148548L,
        -2992238854808660187L,
        5996516183600836003L,
        -371549095799671162L,
        3902975175457565825L,
        6605036583318392521L,
        1891100275270423451L,
        2119245665259072674L,
        -834774890825819923L,
        -231771124221128734L,
        3133196876747178672L,
        7298692169226203885L,
        7126455091552696586L,
        -2143648506542037333L,
        2865309216991778464L,
        -582169278536046195L,
        8080177625773872889L,
        -2641866597771089394L,
        -4210759777426999986L,
        8940623302154716559L,
        8753678355208533280L,
        -6281297936039038456L,
        -4466014453281785565L,
        6273362062923197148L,
        2333217083667471091L,
        -2134695293413683177L,
        1638282373040657672L,
        3200622258378038793L,
        -8777912174432066160L,
        4509402067996738269L,
        -5444623700171973227L,
        -4861257960719874399L,
        -2931845644152220868L,
        -2415035074251453041L,
        -3415608992526650142L,
        -1100060277548286709L,
        -7950756431533405941L,
        2529778543681983619L,
        -2509511542105356611L,
        25235701976844069L,
        3512243450460933893L,
        5497081699936367558L,
        8834833749235004269L,
        -8786955172657476976L,
        -2806229680204644453L,
        -5310949673572257587L,
        7180989110601385791L,
        4574812998786692932L,
        -7191136183375597108L,
        7817612065160053901L,
        4092147258927215079L,
        -916694886327147203L,
        -8155481011317235899L,
        -6577214469178899288L,
        -4704682976594284594L,
        -970000750564611255L,
        6392037803435901919L,
        4653466442162924160L,
        -4217569099833350175L,
        -7494295064988163591L,
        268071204677339466L,
        -3128139626778549626L,
        -8490295735340959824L,
        -5162368829222403127L,
        -4379157681365371219L,
        -4505869932044746193L,
        -7725004848904746158L,
        -1077347489733049759L,
        4372692724364737369L,
        -6095523387109702205L,
        866555760732064401L,
        -6043383891507219565L,
        -5064298145687783678L,
        -8284554766413268444L,
        4358509246174021158L,
        -314402459279271878L,
        4534052702364464050L,
        -5069975264209271430L,
        7618881160105474363L,
        4167592104901771551L,
        2277499839812963141L,
        -5797737740917833733L,
        5386843611229288306L,
        322032948055534721L,
        8623908495470433985L,
        1464656873108399270L,
        -143110847782655873L,
        -3683505493125515417L,
        5263884653798534228L,
        -5596816932431872850L,
        449263668055475580L,
        -8209880385374160761L,
        -6160876842633556933L,
        -2822510119276015598L,
        -1867833971803598158L,
        -2743011208375680513L,
        -562758870972224424L,
        5241707884356795802L,
        3044382044884310303L,
        4240643424518839454L,
        -7202731734581844883L,
        -8098501199143125283L,
        -2550459180607677020L,
        -1776717083783659251L,
        -2343369089757631624L,
        -6293279254462751659L,
        -9100627021059872276L,
        -1298100985130924363L,
        3390116780901102550L,
        -4663999614093100429L,
        6916372370306791572L,
        1488349423055656442L,
        6773020852755024150L,
        -7005014351468554871L,
        -4753926923183579314L,
        5415870192658316069L,
        -2670881940811475410L,
        -7225213211793183097L,
        -5703028807893997804L,
        6561444537664669662L,
        8939981796276591301L,
        6017910964940092953L,
        4500890776998912544L,
        -1835018042586347444L,
        -4191687948466793374L,
        4106435482907441086L,
        -6130167349217050086L,
        620129892796426300L,
        -6144158488464216798L,
        -625006850515938527L,
        -6682172611475406987L,
        1220842624016183584L,
        -7098540157067814615L,
        -4378743347226734130L,
        -6508042393772984279L,
        5289282493574993598L,
        -6781000719696595982L,
        3322666381578332368L,
        -8173363279507413324L,
        -3603049973704190207L,
        -4316988796658196446L,
        914989291445423876L,
        -305370752767861151L,
        -6987550192802158001L,
        -942676483343861967L,
        539036846465448158L,
        1605373100913987077L,
        7713068526230669637L,
        7241900405827926293L,
        186408038263119881L,
        -2429472274603752977L,
        -5720789098334319209L,
        -6674769505767916301L,
        -581393540490176967L,
        3124744789645879825L,
        -5602915602343937931L,
        3263507419526132695L,
        6937077332985554718L,
        -7919624999578199393L,
        6556190618267765484L,
        5682381095734864238L,
        7614251273120089370L,
        3395157685499349978L,
        -6398328093992251036L,
        -2651093395236575804L,
        -2097470820892650054L,
        -7267148748500151232L,
        5507274834982481157L,
        -2194323672581532616L,
        2269493654210886217L,
        -4216275761811372636L,
        7228709978053803804L,
        1544682503099095700L,
        -8135200911288478327L,
        7339704802803690870L,
        -9063598666954112733L,
        4249185982522288588L,
        -4695745996091883154L,
        2627137268581003083L,
        -2578238879441406084L,
        2429552460105156204L,
        -5016405662860787559L,
        1213685060600888916L,
        5207480625629771054L,
        -9039842400434871721L,
        9199909831090107055L,
        -3171515520826634527L,
        -1366973376209295366L,
        -6750324026060931870L,
        8743899778045759827L,
        -8621966377322960273L,
        4838450322903886505L,
        1788019071908015560L,
        4913822197134872906L,
        8309346613152344445L,
        7951951012499331460L,
        -4689530477253691656L,
        -375319494882093024L,
        -1845044534505086395L,
        -8796776862070375491L,
        5018318155817526800L,
        2586522091503534478L,
        -4968582762284083199L,
        -4927465852300428021L,
        -2580812699959118622L,
        -4904418483836862133L,
        4578001388519224564L,
        -145427029490022812L,
        5605281842155781953L,
        -8269674765102782771L,
        4873099922414055552L,
        2170749688227700120L,
        4825942009324106796L,
        1792050877115378285L,
        -6605853503524394834L,
        -3916692778840952841L,
        -1986097963548896269L,
        7892537689540433594L,
        -714136291891260346L,
        -1648197774385026330L,
        3795404391823901459L,
        -1987978550021718355L,
        8998001289418857599L,
        -3968668700060172110L,
        -5244271268838414883L,
        1096876802937588911L,
        4954206823378648244L,
        5569423710280172585L,
        179070914051875895L,
        -1379762138674772955L,
        -6297783890085466379L,
        8673286033209200164L,
        -209771371089403783L,
        -8371158182924445911L,
        -7703744831611511871L,
        1612557317982335369L,
        1602832695339190345L,
        -5248812496760442693L,
        -555465681086935620L,
        2520493230458560658L,
        -6666085761216925275L,
        7883921169936066300L,
        3038683421696596159L,
        5845618097380867812L,
        -6239014819988016480L,
        -8753088746243740226L,
        -2330652362011359445L,
        840642889332131730L,
        4416624017275726341L,
        4690979542527364119L,
        5378555482069527564L,
        1969844668631546234L,
        -7848379025576209733L,
        1977110971269560399L,
        2026765724811466304L,
        9004994755727389006L,
        -2875238066205385075L,
        -6183036361941845026L,
        -2386657827628040463L,
        -4350668673682921339L,
        5862965863197982604L,
        -8441011186955249281L,
        -7186928257432232499L,
        4577738672815669344L,
        -4699309429317703093L,
        1727205267222358381L,
        -6451216071831055595L,
        -3419094732699739587L,
        -9202486234602916474L,
        7995498040430401544L,
        2322468220197016729L,
        6579662275874920800L,
        7479989025114804641L,
        7484110942964095819L,
        2864220530563314806L,
        -8398057079307137296L,
        6439003393908427189L,
        -7835388314568774857L,
        5595140202807403856L,
        -587980358622679054L,
        5729028629565035445L,
        7294164757654120979L,
        -7034561723919575604L,
        5344573969684937116L,
        3196215998156871328L,
        -1123378572589443417L,
        6074546259209406933L,
        2893792398378492069L,
        -4483476567799717014L,
        -3363408847369344926L,
        7141254867533804482L,
        -5940527802490951736L,
        -1094882559952364017L,
        8329622896679444321L,
        -3173141862687107863L,
        -7280018015022509268L,
        -2089330837882663590L,
        -354683141083920270L,
        -4079664314326720324L,
        7616886288174535159L,
        8554847071096590810L,
        -8173759087524336468L,
        -3448863502458656393L,
        -5738508186162418231L,
        -5111997041556312344L,
        -8550681297377936354L,
        -4330402296580745208L,
        67088796475747867L,
        -6874504283145514740L,
        8707156726330695854L,
        -8450062796293630088L,
        327731584813515290L,
        7304259244110792264L,
        419104563434390334L,
        -9153064691975026716L,
        7490483813653854554L,
        7077589656341495466L,
        -5945353789867862552L,
        5486988927099214347L,
        4267202661349380766L,
        -735203469934508862L,
        300049113155592253L,
        6668837619034437534L,
        213993526072465908L,
        8835245471465274914L,
        8183790714937497863L,
        8258711456036176276L,
        7136444522589690162L,
        1211565004822707193L,
        1989924245575051080L,
        -218487864794566557L,
        2952924548635767820L,
        -6462002167772557833L,
        5913246427219973975L,
        -3174533491330927888L,
        -8785311174506482406L,
        -6684494991311010323L,
        -2482601218412888093L,
        -7285335761215045787L,
        1211034790718408728L,
        -9100855059113049869L,
        -1486270963118123907L,
        5275833683049609995L,
        8459420716417000011L,
        5533842052546250233L,
        -6743116187090502104L,
        -8218081861923503701L,
        5761628519765780332L,
        183841883985945582L,
        6376290782250169855L,
        -775214822639981928L,
        -8823028331753034219L,
        -7585331840565087967L,
        2975478445973141542L,
        -5063889138086837402L,
        -2979700995440085783L,
        -1219607777405733761L,
        -7530208062940995205L,
        1583477077636770548L,
        687603337248263893L,
        -7494884423475008422L,
        8422729696142094927L,
        -2688483407638967316L,
        3899397712568319078L,
        7271622649506188466L,
        5081817906386987096L,
        -916174376204972738L,
        1540653617218284471L,
        -9108776863627327658L,
        409951124500633339L,
        -1411012041120099174L,
        5254818079101287689L,
        4655192715659848616L,
        -4055996322312971483L,
        -3525221214301544451L,
        -857176511645353866L,
        -9137977946340218096L,
        -2464138987127699380L,
        -1572944913716776527L,
        -5382357127457681304L,
        3400456476820781019L,
        7092666713014777182L,
        -1016869719262402776L,
        -4296380651220352294L,
        -3137955217832540411L,
        6899747201222115049L,
        5612318743221858846L,
        -3082611894693908037L,
        -8765593464570788072L,
        -8518170211087455673L,
        4127210266223470126L,
        -480745760307138952L,
        6366437837796426817L,
        8633027726559958619L,
        -4876440158972240126L,
        1910667810356463924L,
        525819879391508442L,
        728364790223504935L,
        1801852490210258450L,
        1693556137065594317L,
        7512677136171374024L,
        -8502671549747219751L,
        6750465734377947195L,
        79926463486212071L,
        -1606928706353092712L,
        205498205560429840L,
        -8511147442275932832L,
        -8428335428540761347L,
        -7426388905907916885L,
        -6514050737271088879L,
        -2450758388754574856L,
        -5091230991480586360L,
        -5169952131144179624L,
        4447490729022261013L,
        -3692318537052447395L,
        1078660998337165744L,
        -3916568308067450676L,
        6024800331836073525L,
        -8107333408030092167L,
        -7607289536558565257L,
        5247807205554828460L,
        136732938448579124L,
        -7158883148260417938L,
        -6099971793579365853L,
        4854881589738432309L,
        7711527295835389228L,
        -8549957081212159598L,
        -7303058748474201722L,
        -7681406204943895241L,
        -4881190754207950300L,
        -6035776958688302906L,
        7214212236240295751L,
        1981012208386034732L,
        -1049989180117070494L,
        3924935253660959406L,
        512859785555014414L,
        5908617682678575542L,
        6758310316951005278L,
        6189924959604816301L,
        -4920405470515789427L,
        -2117869367297703052L,
        6707816747990551118L,
        -4980047489747530190L,
        -7365247289662920271L,
        -5342685489927387987L,
        -8590216048531947264L,
        6817356446955049603L,
        -1378280258813293636L,
        -3592400710075707758L,
        -8871693364702999347L,
        -6373833613639184348L,
        4797638018086956108L,
        -5647576741545902954L,
        -7901112803680191059L,
        -1362942868170890798L,
        -5813135684692802772L,
        -711135680335633766L,
        1062354220967606079L,
        -7871043181645557885L,
        6112341712359859833L,
        7916891160508372008L,
        -8003652862887082098L,
        -2396517101239953792L,
        4370059680750956803L,
        1363641917746765215L,
        -5876946297329039758L,
        -103128310036998617L,
        -3800790044039752368L,
        5199080865813174926L,
        5691839759690453434L,
        8175397015029172130L,
        480520985319940721L,
        -8578753082637254739L,
        -6716879961856683419L,
        3597461575855927530L,
        4979191387439246058L,
        -8320455146441525699L,
        -2114691132483379200L,
        -4537130860792099169L,
        -5718306086279916956L,
        5136790107805442544L,
        7289096860375296487L,
        2880058958308819603L,
        3767398060224293737L,
        -492404481239348279L,
        9012315970305384994L,
        -2684151666886841943L,
        7272790214055332206L,
        -965422762587779909L,
        -5443848734878691959L,
        -8153873600234827448L,
        2490597961970604400L,
        2281204882791254127L,
        9133290251048762192L,
        -1491895733843702610L,
        -3474774710279245800L,
        4612394989169216779L,
        2622616589522119419L,
        4355987380154620492L,
        -2850604048799570616L,
        -4107832232055765572L,
        -3723943963188375533L,
        -8366293232338256548L,
        -8701054798330196757L,
        8878901433891377891L,
        7295106607144564961L,
        5312667635062107659L,
        -2358396954926641322L,
        -4984697743423066531L,
        8939820283882288854L,
        4023787057481178052L,
        4597747073035337711L,
        -3865522208345382306L,
        6560083733272461230L,
        2427578708615942986L,
        221210573151544106L,
        -694084245105944199L,
        2078710449028907801L,
        -823943775911009298L,
        6602372026224749570L,
        -6054136931573131159L,
        601483741465077007L,
        6742891241881907768L,
        4262941380660230060L,
        -2511197275383350546L,
        -9092751631744236653L,
        -4870448764794484926L,
        1830385011126178734L,
        -6596888154152123634L,
        5648158405496157638L,
        6386181707589856071L,
        3363359913697235141L,
        -7056659780210553822L,
        -5261178176756493055L,
        -3944960812874472523L,
        2763181386445379193L,
        -2619663536437942233L,
        8897272156543942808L,
        -1257206140816012022L,
        5942440353528557164L,
        4786157224137440415L,
        -9220126986536151642L,
        4182399256221021027L,
        5315354483278533273L,
        8269371862567018757L,
        -7830778159860165874L,
        -4812100746794420620L,
        3498354375067608851L,
        -746722368941475584L,
        7380715032997081755L,
        5189957981103089885L,
        -4300428216272672646L,
        -408627655218877478L,
        3669295430170749153L,
        -3178922344308130598L,
        808687805654478372L,
        7382854145017135524L,
        -6443473827958318421L,
        -3243447797010153128L,
        -1263178138991133398L,
        8750726774705960543L,
        6533471826240257695L,
        -7394781107965678936L,
        7513264927729266721L,
        -3004378607368189670L,
        -6171795523163885499L,
        -5383549323957030811L,
        1014976843641973640L,
        2432193004343470889L,
        -2321713758391047034L,
        -5925760547403348951L,
        236543589293463223L,
        -6902103426228510687L,
        5049656219947439343L,
        5906696563051122955L,
        -6356958402903730770L,
        7486754190124721854L,
        -6788905906689198314L,
        7381793004093637930L,
        -4615937202128935315L,
        -5266672324677452216L,
        1047319090632526857L,
        9103083281304922244L,
        -8812437015774444320L,
        -4970183476407639031L,
        -5247957782476148736L,
        4465954112135309385L,
        -1053934358778018400L,
        5829139887286261453L,
        4669463005092905624L,
        -3286153457025266798L,
        6416979317993515170L,
        842322401817513616L,
        -1776383023933641969L,
        -8880210007231865557L,
        4508732217351572993L,
        1193868998902473261L,
        1613803703795008000L,
        7204477604144047047L,
        -8681096723143103693L,
        -1746910701409113306L,
        -8920378322388987992L,
        -8966483163014777443L,
        2824165487928805094L,
        -5662128102397495131L,
        -6624810964386882286L,
        5452692340292941871L,
        4316228119275391983L,
        -9085964721275713953L,
        -2133433404692719643L,
        -7343693486447937998L,
        1109852172632293793L,
        1921023425304227346L,
        4854131887624741149L,
        -8634651654935008313L,
        -4727747937541913857L,
        245894689954376778L,
        -1171354806284191550L,
        -4449375760321500296L,
        -2278035820133972979L,
        7026254152720723131L,
        -5122868976531507196L,
        -5791020171604844054L,
        1901595461796531398L,
        -4888600188203895159L,
        5238583255328115684L,
        8191725727925819882L,
        6907331918345427440L,
        -8330998437541118229L,
        -7677204855776214746L,
        3733289736446750667L,
        -6086367961329321564L,
        -2223139316713310111L,
        5551603720291777494L,
        -7284366962105424622L,
        8307035520655908816L,
        3515558653608239510L,
        -2623185163047066159L,
        -2881473020374695697L,
        -3119109298045318191L,
        3915842281774372758L,
        4341838354106623860L,
        3536460086838807366L,
        -400436201916140511L,
        1034940505346304444L,
        -5677328290907787965L,
        3241577004049148165L,
        -2177296903540985003L,
        1224705836089007055L,
        -7226703706701449257L,
        -5217415576556159333L,
        2723639485365257427L,
        3532882935985140762L,
        -2367665914582725528L,
        -1126240810191393257L,
        6572389991681822664L,
        3742078454964142074L,
        2537741859858174488L,
        2863650720786458695L,
        4444554472903165566L,
        4972147385910153832L,
        565306137953874174L,
        8228468642079060801L,
        3686959913775111096L,
        5015958178622222071L,
        5595710504305494790L,
        3174461843483976916L,
        1297058991090722108L,
        -2693601104595504655L,
        -3961646960717704540L,
        -329224545254449497L,
        8172319141947522776L,
        -3283750417712288364L,
        1484324135840360777L,
        -4101313183342306762L,
        487423326160209394L,
        -6984064475638587471L,
        8613232447441028099L,
        1138585794312519742L,
        -5219522830444455097L,
        -7068591267064606505L,
        -214092808701416145L,
        -2087748990108944657L,
        293814116254359703L,
        7396092072095010078L,
        1104271143132319796L,
        5950063587854161963L,
        1918000905829023199L,
        3382742654219329797L,
        -7668064903330744354L,
        6592480311131388529L,
        3771018342787175035L,
        -9209379343054099077L,
        8809433506817785437L,
        3622962127039251936L,
        4637085440835592271L,
        6356420981957532639L,
        -6037359062089609360L,
        2809649815120543037L,
        4910545367671356353L,
        -3641944013579376181L,
        -4828543933815929748L,
        -816942255851701146L,
        4500737028494484698L,
        -5360859409398459244L,
        -980188011105516319L,
        -5341147405229376051L,
        -5059204503101732424L,
        2323241341608001835L,
        -7234489726660109408L,
        -4399342489059768231L,
        568957892278445175L,
        -3128288682699716902L,
        268059501110939604L,
        8869377529779418169L,
        -5191201845817789231L,
        8742584095090015507L,
        -1833031289184026905L,
        441773167769005703L,
        -2862985803782167939L,
        -2217136279577453892L,
        -4699777063743038799L,
        2319030942204069894L,
        -3096829301818651315L,
        2152089781530614740L,
        3591093109998414360L,
        3737787276968062484L,
        -2075424185432267668L,
        -1313631551970774685L,
        -4919910057472342658L,
        -1163170530272854872L,
        -3783140882996568908L,
        -8037533461827223438L,
        5147544332470383179L,
        1327994358379982364L,
        4326125443692555139L,
        -1720554764987678589L,
        -6224447350716142955L,
        -3664233167161816084L,
        -1358465093069484872L,
        -3170767669678732241L,
        3175800087146479659L,
        -16337625285930414L,
        4460646835363181976L,
        -6184155055121584051L,
        8105205207275831311L,
        364645839147141988L,
        -3252358421106878137L,
        -2379855386905973850L,
        -717996509442787349L,
        7039157268142466226L,
        8799412946070712593L,
        -2256794007843286070L,
        -3026828459050443467L,
        6316354959643887085L,
        -632743241481339103L,
        9192761499170372867L,
        7519964503218211187L,
        -3171788476130391814L,
        4205532823146854278L,
        6513522002710255853L,
        4968793986534390139L,
        7924914011447575185L,
        3506146014983106198L,
        8511722175131586351L,
        -3535216109813816630L,
        3043419627940964079L,
        1989151438749037821L,
        7233464223954842358L,
        -3249615372439963990L,
        -8665368429824794064L,
        -648378579874199315L,
        -4727955777856631607L,
        -3689595611110413143L,
        3856183988075237273L,
        5517263844496266427L,
        -2433339568447789451L,
        6589509038357236405L,
        -6774119612186335761L,
        -4350036823275823154L,
        5834187175154047558L,
        -3767301317720281706L,
        -8702001427232534750L,
        94015559239255499L,
        -4379700402807826L,
        -1859937611212626430L,
        1226887111095682425L,
        -1185076345898896498L,
        -7829178625122620180L,
        -2280062727697501740L,
        2556040939242422304L,
        6251964074628081557L,
        3066879182290958720L,
        -8785644387968277547L,
        -4488264477615612586L,
        8127606717194526874L,
        4890787706249869594L,
        6356833732756963227L,
        5174834866809420309L,
        2027973333647796824L,
        8053801885705963745L,
        -6944307380006370243L,
        3113788140330654611L,
        -2986910451567880470L,
        2425903292748474372L,
        -1715269818440437717L,
        74338710306223399L,
        5132849055217923687L,
        -6714922651557874917L,
        -1476767669230945550L,
        6267869827386314060L,
        2151492872494414422L,
        -188287405141817418L,
        -2396141142455784570L,
        -6107851785102021570L,
        2899506268788328800L,
        -7955799538392167846L,
        -8939834619099069255L,
        -2962366035946053462L,
        3123384032637701312L,
        -6706608866229291712L,
        -3500046218323398125L,
        -168870750581166069L,
        694099585994227916L,
        430038091926664816L,
        1624356164486366102L,
        4334130261304381128L,
        -7324629223026415329L,
        8823152808567544116L,
        -8620326148777841379L,
        -788126204987848665L,
        -8814182475375947241L,
        1080002348337528081L,
        3043074730722911830L,
        8234596790989448752L,
        4608358602898896255L,
        2343398753207867914L,
        -266697139298886785L,
        -159260171872612558L,
        4370044052923372524L,
        -2995614366415980410L,
        -4209600344306251016L,
        -8755371846184338683L,
        -3955855588499799050L,
        -6787638727374739702L,
        -8849461119575970289L,
        8716688164664398086L,
        1514577502053504108L,
        2240729936627952880L,
        2838465136424227986L,
        -1487161195056206463L,
        -391895021770092123L,
        -717250607935411377L,
        725101643113018626L,
        2018234564447318861L,
        -5254575322305083709L,
        4424742596549423606L,
        5662970072122589602L,
        3130397907087802883L,
        8049486087948419299L,
        5557801586424368035L,
        -7085534093136275857L,
        5600569740806125553L,
        4128462226512133482L,
        -1574925284503437735L,
        -5135068613676616410L,
        7314046845044324564L,
        -3686747832999142812L,
        -1564972575538757040L,
        1120348884617118977L,
        3412879446395492399L,
        6962651138322613963L,
        877006726541596979L,
        -7866734399584535627L,
        8572173997988387711L,
        3835382868124934929L,
        -2583877131516514905L,
        -5102649011667592384L,
        -4798459575624269557L,
        -8156429235664983329L,
        -6239845266330519720L,
        -1914747524813276529L,
        5363997714419355781L,
        9210533546107024609L,
        -5245165629299500976L,
        -5193672401549237041L,
        6597128830638074557L,
        -5969845161062876521L,
        -2445089653030403139L,
        -4797981019593561429L,
        -1962888612492761260L,
        1803013398616297242L,
        8744887681327442130L,
        5851196282496012008L,
        892128523146305717L,
        4170022229766562081L,
        -2134478426920707338L,
        1238027773513435748L,
        8866916391213127576L,
        -5827099544905007258L,
        -1552818987126555097L,
        1979982077379021084L,
        3998394901457623548L,
        2787580374700656688L,
        8372209727011402499L,
        3409775566082298245L,
        1114413850985679686L,
        -609417232397692848L,
        1762759225268672019L,
        -378983625905076170L,
        7435306721054054073L,
        -5155196407132036358L,
        -1668786196380559129L,
        4519643915893375417L,
        -8609870523645938036L,
        8590593064246052287L,
        -7126254452521759890L,
        -2826314600096007100L,
        1624568634286818020L,
        -450700576225246242L,
        7539390560191158137L,
        -2188075991300573837L,
        -4681497720947957856L,
        -4688143896220383919L,
        -4305920512968147039L,
        2656654774987994840L,
        -4854606985975851256L,
        -5361383744936804655L,
        -8947485315238255267L,
        3311598196079410229L,
        607952732017041432L,
        4481836561581728625L,
        1856670507280870266L,
        -8371889865268432118L,
        -794649732821127929L,
        -6144467833645861578L,
        -5870596264115217421L,
        1547182795679877050L,
        3554393108243259363L,
        6096915670896392585L,
        -7585113688284079403L,
        6283800140108182083L,
        7325444638523598785L,
        -2676741791420355695L,
        7399210828703529226L,
        -5153686314010544980L,
        4553182987876882087L,
        -8475602433165535745L,
        -7549754731031245776L,
        383864735074387336L,
        -1462360910626047142L,
        -2503433555198690048L,
        7124680608501705883L,
    };
    public static final long[] HASHES_OF_LOOPING_BYTES_WITH_SEED_42 = {
        -5752995443491633966L,
        6697150685477982789L,
        -8292226578951944721L,
        8469039529317823308L,
        -2857784829002285502L,
        2708946207299695398L,
        -475923488709545204L,
        -6776550864174025842L,
        5997435870397431563L,
        -1413893264211963655L,
        -2557925560926552642L,
        -7786449276288726217L,
        2663862252392472519L,
        8293182564608143680L,
        -4991485761665135445L,
        -4260167493401566131L,
        8397271794406387881L,
        2767712210800417827L,
        5643454605919104416L,
        -2096221407055692639L,
        4164971193688274917L,
        2012618980459220155L,
        4502510481524221164L,
        -9150753967845211809L,
        2109736127223229935L,
        1705328223411648698L,
        -540252590844239442L,
        -8448139437911662946L,
        -9172921965178401452L,
        -5901063484397960162L,
        8990179058523403886L,
        3191587668216080419L,
        -1505157133869540426L,
        4826297514018361126L,
        -506720607717191353L,
        546407899098652120L,
        3565976246504851323L,
        -7513490578875853277L,
        5136885717551856091L,
        -1235315857278978092L,
        -5210210379482210601L,
        -2670168613513456171L,
        -4576802255731115784L,
        -5498085225412524972L,
        5454622260446372900L,
        -3491156961084957616L,
        -2040190370914817596L,
        8748880751719855958L,
        -6066272418698883734L,
        -8123169723410338681L,
        -3402048629088769519L,
        -9050773182933316170L,
        9109683037362136984L,
        8292736658273756483L,
        5864675646204731276L,
        -3410199798914438762L,
        6375136202365522231L,
        6084483678447018976L,
        4341319149581895135L,
        -2617192247437531424L,
        -7803896693111046938L,
        6612714826762703589L,
        -2604165952446921239L,
        3956924213727943389L,
        1828772354490899965L,
        4565769277738155679L,
        -2552163583152823111L,
        -7282771451698115771L,
        1541537288639310430L,
        -1260053141177242892L,
        4470999817094301913L,
        -3084949271203311242L,
        -7546393470851473997L,
        -8966028816522567997L,
        1051341974704645729L,
        5538793834884616099L,
        -5628104741732354066L,
        -8951130142602632322L,
        2719505240413599325L,
        -1008778746385874696L,
        2203198775211410780L,
        -7143533605672789717L,
        -453883261782705024L,
        319057938868287727L,
        -496754595070837553L,
        6805613814053675206L,
        6132340656385066787L,
        -8860356581867026581L,
        5016198123629145689L,
        -1596369660096962742L,
        2766685770642558330L,
        -6266516138812319453L,
        1921783429840399290L,
        -5251293476201135485L,
        7108628593359030710L,
        8093943502713971156L,
        3074597418887950513L,
        8333496602590533977L,
        -708020943442059956L,
        3102625642886133984L,
        -6499370722788023494L,
        -6917377031919774998L,
        6901729616079135501L,
        4521740373890802536L,
        2717665495303183111L,
        -856278075863271097L,
        -2502885534841887818L,
        2357338131581904382L,
        -2522296722172564384L,
        5979169122227632125L,
        -1990576311176786902L,
        -316116701196334114L,
        -6739126101832001255L,
        -330238767430913485L,
        -2397646708417573337L,
        -5746367286277299531L,
        3388130732766130858L,
        -7310644851569314744L,
        -4824388967193941498L,
        -648780185892102954L,
        -8712468613035181241L,
        2711516130478712762L,
        2754691483449550770L,
        -2790972617414146667L,
        8537743091160071936L,
        -866831535856147830L,
        3962787639412434933L,
        5751063116956730026L,
        -6343210590541299672L,
        -9027452407994212939L,
        7748080448177464210L,
        -8875675911298011676L,
        -3943374007835482499L,
        7098683995859102865L,
        -2275458998280053925L,
        -4628453854860491915L,
        -1529511772279148360L,
        -2871057272253482780L,
        -334841257423340530L,
        -7314747545247602053L,
        -201172568470226645L,
        -6965846975881685612L,
        2309595871631956781L,
        8951003723927622968L,
        3001873710915957640L,
        2012064170299142173L,
        7095981982072554477L,
        2920562163667542830L,
        -4511110467250954239L,
        -7166611815479236612L,
        -2211021712129656794L,
        1338540767674038758L,
        3487756347488888084L,
        -4937557446668954437L,
        2620388879014721175L,
        7208356694606927210L,
        -4513132828283918504L,
        6317549580437550543L,
        2401779216570746255L,
        -5457469669547078677L,
        7471661866970627352L,
        7386623443212346251L,
        6923730215630122759L,
        -2325097522428671189L,
        8000364301902289246L,
        4925551359859147160L,
        -5595982422094382548L,
        7228349132916965209L,
        -4703354695115981511L,
        -2115306052026418681L,
        9090854014723212293L,
        -6068838827925313383L,
        -6558621713962157376L,
        1473800012311082935L,
        2525181364542947966L,
        -6021645913223485972L,
        -8318988851482275654L,
        373007065698472266L,
        795167131148895585L,
        -532571991837954792L,
        7238159482918777429L,
        -7525111696825330223L,
        6189481850281476163L,
        -512400154882781230L,
        2185412829792057998L,
        8303821120875906039L,
        -3658266464759815456L,
        5534191248734418007L,
        6101574779391286487L,
        8145964650042952627L,
        5391320846882423376L,
        956217201277458121L,
        2237749983378005618L,
        -6656683242892884554L,
        -3394474129803761342L,
        8406074839295737353L,
        8623233445127821330L,
        6897419204888614556L,
        -3873285223086133426L,
        -4449195818654013260L,
        -4380415985865610994L,
        1843484917925416568L,
        -3683421128553731612L,
        -6759630266574317021L,
        7963823663074411611L,
        -9073210183338934836L,
        -4207841706309087395L,
        -6317104811444343048L,
        1176967159244991718L,
        -8150985710604331729L,
        2463641502615436945L,
        -4649906465921856966L,
        4753784510776661068L,
        1401826846930455507L,
        -7215160016399204667L,
        4222527227332022097L,
        4242038843438232290L,
        -6229200518763707451L,
        -7634229331990944723L,
        -5906084857878661851L,
        -4471729319982253726L,
        -7488818713861180407L,
        8958437567708072797L,
        -4361717585953265517L,
        -3589345870120547258L,
        -5656002784155139233L,
        -7405858066073224924L,
        7261298787749646565L,
        -2118323539609274283L,
        8440646816505080462L,
        4907492019172743241L,
        2971795108974926972L,
        -1111694536287943778L,
        1092562971031582110L,
        7435780765000923721L,
        5815238393374335255L,
        3728879363004790298L,
        7950374680552679377L,
        -1559646550697408809L,
        -1009638403217698280L,
        5477007325533850929L,
        2802315771636654550L,
        1359831828875761363L,
        -6244291732477211457L,
        9138108823363225790L,
        -5700703633273694371L,
        -5189931767235375959L,
        -5917217031437644153L,
        6559980057173897885L,
        7585954365066361941L,
        1833254434142522137L,
        2622798612834078243L,
        2935894269140572959L,
        3342180495858759098L,
        7763655187214368195L,
        608976619205971467L,
        -4493083204513432310L,
        5655458152670549588L,
        -995372262620475933L,
        6725108152764242753L,
        -4152678539161864839L,
        4879330012023732227L,
        299691067249437340L,
        8253082866296742941L,
        -1349088245542024700L,
        -930670635091392036L,
        -6305033172145799503L,
        767676528758696723L,
        7848289152882068204L,
        -5335123725692922309L,
        7618587959592606045L,
        1310623412826253949L,
        6105911509337366946L,
        -5132873445536420119L,
        -5066374717991788365L,
        -4196018003514359930L,
        4602399218983903018L,
        6996237050722228275L,
        4750432263399753517L,
        -6552768219041772261L,
        -8886514643984898377L,
        7353718498017818617L,
        3420752363982256164L,
        -3106921624226184176L,
        7755185569018499850L,
        138048424823142520L,
        4574855394856311409L,
        -797116754680671576L,
        -6319525882248058891L,
        -7211292892013797268L,
        -5969262208310571743L,
        -2242517284471541983L,
        -2134523085752830969L,
        5239925547316736378L,
        2211989170649079345L,
        3951874086467810189L,
        1541713943974254342L,
        -5392854420512731723L,
        3564316510315168871L,
        2901564687206922350L,
        1540984989266277585L,
        -5588692335575710649L,
        -7656900483971665708L,
        -1269975572006533380L,
        -8586683894725424637L,
        -667220377486025270L,
        -6992322247305413343L,
        1020432414035508475L,
        -762737570699341127L,
        -4996438874277990597L,
        2399099134154679381L,
        -7294753205977958107L,
        -4330814694281211877L,
        -3424505945178467498L,
        -3908232167211290102L,
        -1715708172189155463L,
        -1541677764411125216L,
        1443437733037296364L,
        -5699613322350318170L,
        28422381221154018L,
        -8448942739014323861L,
        94089349704640679L,
        3121324325667558058L,
        -2027215282474423693L,
        -9090860166446867101L,
        -5570813680167514715L,
        -4433017494388855624L,
        7780214454833321289L,
        2818118075900140158L,
        7909566890394565636L,
        3281719552865083509L,
        2293428426098439431L,
        4831877444478608421L,
        -8036810704178721498L,
        -6696440698423871679L,
        424663572619708233L,
        2210379950234460182L,
        4488772831440475400L,
        -6238973969104209915L,
        -2892035378057749818L,
        1190083349888328687L,
        1900956434625552346L,
        5686029047839893831L,
        -8652319297499303518L,
        5660206937964935444L,
        -5693798368774435246L,
        326881025455212277L,
        -8376143443592681499L,
        -924714482174160655L,
        2731102432407909647L,
        5974710608961653241L,
        6662943015421622990L,
        2629145426514230124L,
        7653779470428211936L,
        8231699528634814943L,
        -7880485152483421857L,
        -8715291256937697509L,
        -2608260639142008146L,
        -2891414416406033026L,
        1006672424561275863L,
        -5345465745471823175L,
        -3007098514343148833L,
        -8853686550740270619L,
        -8826799561287303533L,
        8800245871751669511L,
        565431636219131046L,
        6137897978460556916L,
        5482308004417669307L,
        -3006854606371770142L,
        -5550863738981833513L,
        6860154257076535929L,
        -7830408716033920139L,
        -6220766884162806429L,
        -3254641290637732033L,
        4069104293139053208L,
        1298727460612851492L,
        5145793087755505159L,
        4012194405015900827L,
        -2096633266369036577L,
        -235600124490809513L,
        2256248865523312538L,
        1856550792634706370L,
        -6338437638663913139L,
        605690123879344699L,
        -5972006707479557169L,
        2788841617850067275L,
        3341756482258277517L,
        -8730087995322499274L,
        5666761853789513177L,
        1427855942817620030L,
        -2247084578644277545L,
        2632056116244532492L,
        8983184113458203674L,
        6222824259917067927L,
        832847538082989274L,
        7408336855734508382L,
        2463234904146980715L,
        7616355816816829131L,
        5437320614714817066L,
        2176649963064497163L,
        7847964877858458386L,
        3676215252045438118L,
        1457265625453915305L,
        421670244665897930L,
        -537286355906412984L,
        845546777083974630L,
        6294586905906742451L,
        -6979812383811440761L,
        4101166573373719960L,
        430647036995334093L,
        2563569094767382754L,
        -2226117486192197040L,
        3989815455278220803L,
        -5573460076032648378L,
        -5149764105493446507L,
        8908023797302087394L,
        1579875413248797693L,
        6557085398158756277L,
        -1860582499397819682L,
        -3940264269551745098L,
        -3760050418257691649L,
        -2749137550200198091L,
        863749834414320446L,
        -1701674908797410602L,
        -3441531459858237116L,
        7781166611943523849L,
        -8747694838109223765L,
        -7940615954936651322L,
        1761800111692886098L,
        -7563608795264216209L,
        2430120273101259962L,
        3034607409190630193L,
        7596606678605264709L,
        -8815959038019965324L,
        -8056592803858661736L,
        -6054319005531061432L,
        7637990614259037480L,
        155762651336866309L,
        -5295066003461610118L,
        2097996021613363354L,
        -2649318637576910563L,
        -4710689453059380010L,
        8675276565266944323L,
        4061820304631504890L,
        -865251409507836874L,
        -4305544705996842550L,
        8133733737104758782L,
        -3599082219550900640L,
        -1172444168425884022L,
        7002178848795582841L,
        8753574524527561837L,
        -7959972011549631263L,
        -664335750987460129L,
        -7761182775497779250L,
        -201978935828898840L,
        5748605939155571413L,
        432959146257511060L,
        8597688997048592708L,
        5979346454620003082L,
        6682666834922578474L,
        3635671342630844084L,
        8295581682942403968L,
        -6056716329065906860L,
        4876232349596700627L,
        3282465211073936357L,
        -6277210138874800012L,
        86063810903062668L,
        -5131034425726984549L,
        7879994284944917570L,
        3805360137603820244L,
        -4819745855255108901L,
        6005083603591253720L,
        1260872260703386533L,
        6208805585589862489L,
        4467145362283493250L,
        6925593199187107448L,
        2290814776012496288L,
        2202094536385319447L,
        -1583289128964920170L,
        2414314858213839292L,
        -417375850490384234L,
        -6775757096712023859L,
        1531877516325565400L,
        5092160435195199211L,
        -7779989257755281504L,
        -2910324314591098862L,
        8497090690994716777L,
        -7802963550632908400L,
        -6411284901845568322L,
        9216337043421866495L,
        2437859992012674232L,
        6960237011186167617L,
        5100162418749277386L,
        6509562170805894274L,
        690433361758303077L,
        5936816351771558334L,
        -3601277060469993805L,
        -978457311807747406L,
        -4420940034475608949L,
        3538644062391991755L,
        5164625733904685628L,
        192170982312183453L,
        5014044649793050646L,
        9147945450485230993L,
        121096778422978126L,
        7076446543359171313L,
        3849792111065500559L,
        7235530029899206334L,
        -6832803917257794399L,
        -7448095328943903784L,
        636249030288914450L,
        -5837508951408640620L,
        -5494182545899908814L,
        139946096999437232L,
        -7949772735307966448L,
        -6777152677072204821L,
        -648210928302263569L,
        1484711477581900777L,
        1415763754612838143L,
        -107058891244037140L,
        312958362296582989L,
        5071518533113132226L,
        6638935098145563092L,
        -2867055004276813534L,
        -4289503497262086936L,
        1497170552728782805L,
        4517675483628149735L,
        3748960245079903666L,
        -3691286664879128054L,
        -209359184536764749L,
        2491341916818449085L,
        5499205217633027745L,
        -5512709448748519671L,
        4557913818063026938L,
        -2112204135968966196L,
        3440403110217462895L,
        -5867323792132309155L,
        5420869064478055006L,
        318512041709141078L,
        1057553941897233483L,
        -6895197562631981270L,
        -5782743651675563936L,
        2659771847560443960L,
        6592601119187496548L,
        -517270229881128849L,
        2622604378506727519L,
        -9170205866690625639L,
        4806630682514823179L,
        -7776613972641981358L,
        -1488298548028258830L,
        -1715707210842296824L,
        3796221982870729299L,
        -7882722580553373597L,
        -1797548791879939131L,
        9223079908042491188L,
        7847548061281742781L,
        1041148225166463713L,
        -2800037601895587534L,
        -7832361151307182116L,
        -6950576920927850414L,
        -2404378656089204258L,
        -7720362412660524651L,
        -4901646243176144926L,
        6432612866296388591L,
        665821462715291984L,
        5024465184664377182L,
        1558901948449801231L,
        2224934457550741787L,
        -1486153720652331467L,
        2152321067003602002L,
        -1858128886354189097L,
        2873839996181438535L,
        -243875524287970697L,
        -1376873654537129986L,
        3287122656145633441L,
        3770833946582728674L,
        -2764900700916121857L,
        2560091717993161785L,
        5504786539926877426L,
        673505854315501819L,
        1264431652537758499L,
        -5043418235491208409L,
        -6769065002135856586L,
        7666088207808456995L,
        -2827685615289224220L,
        -5429383711816435171L,
        -3134385201210164932L,
        3020879270457681824L,
        -1689344584352272080L,
        -9040930749904066060L,
        1932280955101101310L,
        -4992572509975070322L,
        7546307129163923078L,
        2939073542428222766L,
        3374974368464231869L,
        885759554366311L,
        6593789636519856798L,
        -1624132412418983395L,
        -6031359656290740003L,
        688983212618230553L,
        6369052776794949918L,
        -1377714920269304294L,
        -1057940749189840506L,
        -1655685782041312329L,
        -110552080942842283L,
        5250633774704933933L,
        -7909648255758272745L,
        719735976337939580L,
        3645906512854567933L,
        -1860978834085668115L,
        -4349804709624489457L,
        7923661347327064185L,
        4244126846532735429L,
        -3251399312816082643L,
        -4937029742581158563L,
        -86298941439722272L,
        -8597913327563881758L,
        5039882027531808464L,
        8056647111062079524L,
        -8976752115766926062L,
        -1690394607348932339L,
        3378746565484573129L,
        8416003090844044193L,
        -2717024430934601010L,
        -5701892799453780386L,
        1533981283496523540L,
        -7462371343115417598L,
        7010080256761797460L,
        4478373719647299143L,
        6305458678328463570L,
        -5102763036459098393L,
        -8778795989564198209L,
        -2268889645684651974L,
        -4555916510323499535L,
        9065546065927673888L,
        5852839483910534806L,
        -3402482240912256878L,
        2023722994972298169L,
        5215407550830003324L,
        1071468158469513836L,
        4955237436537987038L,
        -3083989516400027076L,
        6722953813435001988L,
        -2387850610416371552L,
        809463730078568982L,
        -5395203458608056891L,
        -6137800097014878795L,
        -3605527194936796968L,
        -7589842792710116365L,
        8069067842420108257L,
        -7454408306272078350L,
        2339188701288559996L,
        1008425726458324286L,
        6847676052807732318L,
        2271618337058209406L,
        -8281033180921892670L,
        3604010165737741236L,
        -8269928557793008073L,
        -447391999287823556L,
        8028984830780334836L,
        -3883350805508230356L,
        7482610679805814070L,
        6500112572029535883L,
        6119648543352512696L,
        6922212850686981745L,
        1734731947537567857L,
        4101619546129582628L,
        9155049639883886519L,
        5849304319215085011L,
        -135976101808023055L,
        3329888204068201272L,
        -4336188293967075047L,
        5788433959497374483L,
        -1402363557578146821L,
        3588707324813677961L,
        6715232528053729851L,
        7169368150013526008L,
        -8706746826857587245L,
        -4819316543846777649L,
        -8782313301067526525L,
        -8916832875484128383L,
        -2346600299358242263L,
        1904681875169970567L,
        -6704056743702639344L,
        2270605299750783360L,
        -3940808304480228961L,
        -8321565943725548488L,
        -3825742229541937514L,
        -2349339074190735472L,
        -2948486946206330984L,
        -747906506207273746L,
        4280562720015859798L,
        -4136257343808753176L,
        8445283324198191059L,
        -8404850409602104913L,
        -3264457032343850047L,
        -8759790595969078254L,
        -2542190711281684773L,
        -8843544063303913454L,
        -4003746482399952206L,
        3841695822551400168L,
        -3588090911679720182L,
        4918585626351510199L,
        9222791837897484065L,
        -5760984091213555378L,
        2491736142884395009L,
        9176699063949977552L,
        -311336022868801049L,
        6098071943696363607L,
        3781539988474542156L,
        -5991444272878304549L,
        -7058079929087833240L,
        3692880174470651745L,
        8043184184871662514L,
        -2260533056334755470L,
        7862870576355526775L,
        -1273628657555198089L,
        -7116245059732632210L,
        -6206223953545513505L,
        8769478588548603347L,
        -6809293819712164844L,
        -7072037946451047577L,
        5145959967698376997L,
        3918549975422395928L,
        -3688153306502628396L,
        8933640809529662946L,
        6586386948093068301L,
        4314174515802583045L,
        6042832017761248999L,
        -2163096650317259801L,
        -1301538385158714097L,
        9157628132063555931L,
        8447192224483369575L,
        1082300847283178879L,
        -8765613093828266962L,
        6523561351628630699L,
        7878456944142132573L,
        -5878800239136723413L,
        -899016955838748566L,
        -968680680108344572L,
        8149351788840205925L,
        7767149159758237380L,
        -1002433668001324671L,
        861378480610089679L,
        5131370442347562734L,
        5891997968737511949L,
        -1134130780427583438L,
        -2721284507442384384L,
        3581758406053663578L,
        4711959109881063237L,
        3814833207703197149L,
        -5498755072540800142L,
        -434194050930099095L,
        -1131324138179189444L,
        6335673834129040499L,
        3840591353873435091L,
        6691477876637098998L,
        5389042814799436488L,
        8492537662085986759L,
        9801065220990358L,
        -8991404774454959964L,
        -5967334022174632862L,
        8423499844379835696L,
        -1121320485100692308L,
        -1137347326607533713L,
        3579131621253541604L,
        -949637496239973913L,
        -845717236495377944L,
        2627652869211543871L,
        -3584273871358543803L,
        -1231456733798526473L,
        6404279318428525466L,
        -1959366387574498651L,
        8659995475649499110L,
        5687743493891209750L,
        5734157541830063944L,
        3807145789061111632L,
        -8728883033962465130L,
        1886310705344218044L,
        -2869995344352648369L,
        8631433038774110827L,
        -5196628823587587974L,
        -7457206590006693637L,
        -5287470411743602489L,
        -4100864542827687276L,
        -6925193246164904686L,
        684773938147799771L,
        4684480184200832071L,
        1138521418475557396L,
        -1024452235617887100L,
        370178077665262107L,
        -2580904250658458088L,
        -4067270455265760110L,
        7883457924958258236L,
        2745236661071909096L,
        -6638753008619557401L,
        -1928563245103591922L,
        -5391677730310963265L,
        -3443398620200795730L,
        -8921877650888014333L,
        -2549654053467481876L,
        -6634007310328959288L,
        6662969652277689957L,
        5704789109069509625L,
        -1307333292330657763L,
        6533595699848914839L,
        2206229619406776067L,
        -7059181012292774208L,
        8587013829275411963L,
        -3759394797281060169L,
        -8332558387862436192L,
        4058454963111191922L,
        -2909318126609562718L,
        8309425769040304384L,
        -3332518656544710523L,
        -53840526904216763L,
        -4392299612463469408L,
        -6495163012164872108L,
        8283822043324591205L,
        -3839429045227492113L,
        -4554258591908844950L,
        -8717791527048532273L,
        -6680294812840082731L,
        -1514076315369906827L,
        8342331288999106348L,
        4467472370913596089L,
        -5258687569970231267L,
        6428083210523097473L,
        2293947403016663486L,
        -5526361602248141114L,
        -7270937093961275072L,
        -7226206738482320242L,
        -267988759137059367L,
        3757842653020528703L,
        -654142607214292501L,
        -3877320323095024097L,
        -210352008325460011L,
        -3777353653906366683L,
        4104559760354145145L,
        6351620637332827086L,
        -3953047538968937343L,
        1977509989365985520L,
        -6096612777648073834L,
        3655449697279862217L,
        6371929595416244955L,
        -6719663260573101322L,
        8235058461435871026L,
        8223610568265677874L,
        -636776168225445543L,
        -5658531495972000806L,
        -1315157075774308702L,
        3318184564168373738L,
        -3870791042207323999L,
        -5761074459524531162L,
        -7589695080417675674L,
        -118243652515378968L,
        -5606050504941145854L,
        -1682232575263053834L,
        2064607730151462051L,
        3860046528687723210L,
        -6935238833286905572L,
        -1526898475961616862L,
        -7786760789279579722L,
        6367271805286224450L,
        -4333115896551664911L,
        -1229178972379399952L,
        -5406430689127328314L,
        -8536830855104540258L,
        4592858633504932985L,
        -4661004590562426651L,
        1900079872513330236L,
        803518532278716272L,
        -7227731911919645710L,
        -1531800249475624901L,
        -5068571120099635260L,
        6954901733800148115L,
        -7075071323703859828L,
        1447978964456769515L,
        860006115119071319L,
        -2067420548322589555L,
        4638996254844315967L,
        6983236581726963935L,
        6708882819304554132L,
        -1077037295677468865L,
        3623478619549261514L,
        -8551083693862102837L,
        -6864926796047150583L,
        -5583309839740166644L,
        -2047952294766573645L,
        -1296070923862863512L,
        3533321735634917235L,
        -1137358684259757076L,
        -8080333153054443456L,
        -6770927466908143968L,
        1677314511582577698L,
        -2630259631962080464L,
        -1793645900673563419L,
        3600237620008462975L,
        2180027379579890660L,
        -9043677058766520350L,
        3962397017521642626L,
        3977072778934081031L,
        9036155278583684186L,
        4719201700299004978L,
        195773270223425425L,
        -3391740091956199499L,
        -4297719063714682956L,
        2518769717461479967L,
        5163274893178164221L,
        -7935837524015792569L,
        3725316512735597929L,
        -6062355987398187561L,
        5072788521812186052L,
        4756745374124465344L,
        -6691048140593722302L,
        -4453427560142816958L,
        -8908616043104241784L,
        4680671232907313257L,
        -6131724261229112714L,
        -9108450687466015537L,
        6365495657268753375L,
        6448165814018765014L,
        7071162731007451983L,
        6828906714271770482L,
        -3559294295246311028L,
        124771238363526084L,
        -3293309753712400861L,
        8896706306255876093L,
        3125408161217615213L,
        -5861463414798312654L,
        -9036260382640522754L,
        -2941595857477708459L,
        6033142563060557598L,
        1099630200403990563L,
        7959429886791854178L,
        1535421567087429521L,
        -3523681894692531197L,
        -3906144409472427412L,
        6483996772781688720L,
        4132319255708563987L,
        8769726356542128993L,
        6738613111825331757L,
        1764580723100293334L,
        3299019025645495247L,
        2239605653730261397L,
        -6200467116936956633L,
        -6291344345384672622L,
        2565928296401167337L,
        5329865919971566807L,
        -8575034623756510146L,
        6368322753797090715L,
        -7493350249074734851L,
        -1948050475401750220L,
        -2542388860306602080L,
        3132812952361473979L,
        8662503282931471374L,
        -7226118518078524751L,
        125513287940370920L,
        -7105850358401444205L,
        2873891704788790693L,
        375644362554273808L,
        8779595029680158187L,
        6520575959918535178L,
        6481335563279395683L,
        -3958324538875210597L,
        2650332007800900579L,
        67216421894692841L,
        2892388889322576563L,
        447031742152452522L,
        2214867384342611779L,
        3463418430384064877L,
        -6736581145771083272L,
        -3097757825887262572L,
        -742646863032103227L,
        -675900178715113798L,
        -2232567950500061233L,
        1712025609374863027L,
        -3405265351896222950L,
        -7357424915587192954L,
        5899042778652661141L,
        -7187291342974761805L,
        3480937052474976673L,
        997099418044934990L,
        -2839517833272115276L,
        8199436817352462608L,
        9072737280134851879L,
        839795799971829718L,
        458252816075262707L,
        3252541827624060629L,
        -5029727353658396637L,
        -4967837872862091654L,
        2146776628928215216L,
        5403743629243841306L,
        3306799506878402965L,
        4468336141473957274L,
        7023113564987990226L,
        2871980174971968592L,
        -6665846774723588486L,
        -8521313230784523850L,
        -2899150205599417383L,
        1992195265166010323L,
        3610880564010872990L,
        -8962461672227066573L,
        8499793696703179099L,
        -5174175353166984262L,
        3773412144378555582L,
        -5377488598550438958L,
        -227481030440141534L,
        -3003034596327281460L,
        -6010571883582226691L,
        5285640267764709652L,
        -9094570939029139554L,
        3302183665375964446L,
        8185803481915750000L,
        -7832879598569001202L,
        9185495476894972675L,
        9021601549322560342L,
        -1033483127041468323L,
        -9094719449194039442L,
        -4246271926877732985L,
        5329679602094503622L,
        -3123609535190446287L,
        4714766142804686442L,
        2489307805887894890L,
        2987790131896782326L,
        -2963677483725852236L,
        -8529934738168520503L,
        -6356353435089583010L,
        3208586395891790363L,
        -4407123126725047459L,
        8157441934654253916L,
        -6109838368688820127L,
        -4389983853453341623L,
        7652314184807664343L,
        -4662723430367132038L,
        8667093623786488993L,
        -3415543420133275181L,
        4904278838452314694L,
        -4354230232880600982L,
        8861799057857753L,
        3552811093870745879L,
        8634119875383707854L,
        -2732631755040740128L,
        6518885727185543342L,
        4341137614328678730L,
        6793266319858946131L,
        8047455342123276414L,
        -866422210016420449L,
        -2975253122827530056L,
        -4030176003307022576L,
        -4241696461887318612L,
        -4753266504739240553L,
        -7373316743164657129L,
        6048513984860600758L,
        1814258330875604106L,
        9109940689954894985L,
        1579558970146774347L,
        668478211668974619L,
        8409518560944185002L,
        7245729396754890299L,
        -5114268398654367847L,
        2956616124692577442L,
        4461886846778383058L,
        959690196566065732L,
        -7235204044940286838L,
        7981158344195854661L,
        1833698125790755138L,
        7752754976810456477L,
        5692118834710835902L,
        -3793683786453929372L,
        -5581772364636870855L,
        -7470774962401733293L,
        8780664591724430174L,
        -7663125741516067028L,
        5829471574991825780L,
        1182333455500273019L,
        -1726270951016459467L,
        -2746428321520070969L,
        6832833992125314751L,
        -3990613509805030555L,
        2400486545587757625L,
        -6598170744898189777L,
        -1995198747364774857L,
        -3645842663215618557L,
        -6553956802949933979L,
        363585666263112429L,
        -5656547416142849554L,
        131159332135711557L,
        4242991056913343886L,
        -4674809189780845966L,
        -1954374021725723642L,
        9000512499144627986L,
        -4966087500556332423L,
        -5368443575882114199L,
        7898708771797640436L,
        4954393344642394763L,
        -228876611915096824L,
        -3517612841169834059L,
        -3181203061349135348L,
        -7887316482076885972L,
        -7491168484443218074L,
        1505841500971991620L,
        -4819676400227780409L,
        -5600600902750799703L,
        4287196606575127498L,
        -6631038754487834066L,
        -8562057237102997949L,
        -3310437032247565299L,
        5856634576804593925L,
        -1659423729330836678L,
        -2785469434848827216L,
        -9178954688981005208L,
        8284532255782100018L,
        3932114027983614574L,
        -8735736194352900940L,
        -5947824514040167701L,
        1555054962173652536L,
        -1028318040091115332L,
        4142937213480146786L,
        -2819444980269809917L,
        -2903074845803234197L,
        3718049583878739327L,
        -5493173480792612991L,
        -4746130552040956231L,
        6244568873371787043L,
        -2997679871934966832L,
        4047215048138865730L,
        -6551789563963923059L,
        9086055720517286271L,
        8876034907713774156L,
        3680389259422527058L,
        6042866802807055050L,
        -4886080504692397375L,
        -7166197738900036643L,
        -727151388570173900L,
        2438604478622089045L,
        -8782162061024071951L,
        9077567357215978574L,
        -2871872737471270227L,
        5320002012835335589L,
        5539849377632910446L,
        7555126502803598608L,
        -8125224475094342490L,
        7417955058148509629L,
        4176877628224197597L,
        7598278370710374380L,
        2265897989342130546L,
        -7061482734014550086L,
        1468468196263413305L,
        68682113048681479L,
        3762225435622216659L,
        4581877841476416419L,
        5115735211430226046L,
        -397731465197117692L,
        3802999106815691779L,
        7574760794857420046L,
        4178197313545546553L,
        9065628242529864979L,
        542937206029962193L,
        1542373631583440917L,
        6903559734881147673L,
        -2071796881281526902L,
        3779795498327194080L,
        -2217268270456792594L,
        -8059036377920200513L,
        5425988266816609684L,
        3561830549061618056L,
        -7500972620191462258L,
        -6776359714207180134L,
        -5775998075012891173L,
        -7755164007855727652L,
        -4908348827451399810L,
        -1162366502935483389L,
        -3581470604892760162L,
        -1434370488502028008L,
        -1493293905909468959L,
        -6762524287730181241L,
        1393564479464918401L,
        6717807842217858780L,
        -2269779449488763938L,
        9119207083214966580L,
        4437289221718108033L,
        1991815488616873724L,
        -1136008736729825773L,
        6919259317959590395L,
        5700567409540575886L,
        -6511943523783520343L,
        8471138532439345892L,
        -1261020616469785625L,
        -871122257839774394L,
        5853266956701599170L,
        -2605324811026081L,
        5645723143070327343L,
        6678903618140079830L,
        -8243425527465830189L,
        -7366977412613262267L,
        5554112623362949635L,
        8508696414094887570L,
        4526724121376344377L,
        -3066464409160921518L,
        6423971479710566480L,
        -1301150937530073813L,
        7047171805158365362L,
        6607488204808324896L,
        2550589198730302889L,
        -1508652597994003459L,
        -8797285250854566260L,
        4531577529333440300L,
        7171511780196023810L,
        -8696995432677729109L,
        -1038277725665095082L,
        -4030021971399704454L,
        -7142316504058264789L,
        -8690342808784496917L,
        -3538025267466743323L,
        3030344740150338756L,
        -5434476681454308336L,
        4747881963413479619L,
        6649081146297801785L,
        -1340297105335493395L,
        -2345199575979290182L,
        -5142497021023029281L,
        6590959395881104212L,
        -669027690510749039L,
        4713909714515252237L,
        6334133652957330690L,
        -4130611448171970254L,
        -8777249173946876665L,
        -3777422122544011758L,
        -4139822748883105829L,
        -85322879655457932L,
        8510613507788926362L,
        8480533752847008903L,
        -1501849715563565256L,
        7144010316023561074L,
        7071721153639906878L,
        -2413842258996393407L,
        3829076351340781609L,
        3904259427140354464L,
        -2423161203681766273L,
        -9222948412120414441L,
        2232806743868046887L,
        3459293971647694135L,
        -4958044470517187570L,
        2702008978364322255L,
        -5230685167113972622L,
        -4777581725252095139L,
        -178566492057125337L,
        5473668624447677467L,
        -6025569476816496835L,
        -1758476046405271590L,
        4318010125119483290L,
        -5001898604592523465L,
        4496672693040208250L,
        -6249539806063036132L,
        -7752211883834007080L,
        5401928633460905475L,
        -7924780124408034823L,
        -5852842870036885474L,
        -1507586788733048669L,
        8723145826212343490L,
        6322146995759068109L,
        7033327335320195047L,
        2731703606190537636L,
        -5700197206770306283L,
        -7681929128588407075L,
        4915318349456884393L,
        -4365674444257230772L,
        -618412543643891621L,
        5389658231644689771L,
        -3464092788986188235L,
        -1050158483149088836L,
        2986789282075383014L,
        -7095920626607872836L,
        5041839261426701960L,
        -9180003565648806832L,
        -4136797423318912582L,
        -815263725971673785L,
        7751482036034122791L,
        -6582902412740766080L,
        4948480397753687589L,
        8076288905210502302L,
        -9107950489265491053L,
        -6184418323857721083L,
        -8394291702992930332L,
        -3765480365347368667L,
        9161366530222497706L,
        -2767769147585489819L,
        8629853602447578989L,
        4143140731787551070L,
        -6709802780961091740L,
        -905525597452535126L,
        59611890502504912L,
        887996528204235726L,
        -6522589813044041015L,
        -717562431083190695L,
        4413597631385084460L,
        685793075458769616L,
        6534412965158226614L,
        -7466805892367058580L,
        -1643339784427405237L,
        8108897583594557150L,
        -3012505670609614813L,
        -2102992646348794512L,
        7496589075754797803L,
        7374879453359816181L,
        -4473020896511090065L,
        -2144052467882725474L,
        8932411294479920804L,
        1662104279385187462L,
        505577020704587182L,
        8970226030106571298L,
        4740935558188763942L,
        -7479171385872798231L,
        7795864469149986219L,
        1988890416069916870L,
        5328957726704894445L,
        6393309991805794816L,
        -8023969082870037181L,
        -3201662046137010635L,
        7364167842238108568L,
        -1133670122146177765L,
        -3700583274673702753L,
        5152863800535605047L,
        4340628140712624150L,
        5588611203430726905L,
        2682781254448818030L,
        -4334335781100941681L,
        2486482109045101170L,
        -222120907104518499L,
        5461720682682027710L,
        8953356406381104317L,
        4813649794280024185L,
        -8815822744547391388L,
        -119150930688834339L,
        5696219244854669615L,
        8826694157719678034L,
        -1678317963810155461L,
        2312220003237053610L,
        -3288132327244573070L,
        -6655294980817812847L,
        -3093613585240964494L,
        -1504599840801857900L,
        -6463236998312950925L,
        5810208611405255502L,
        -6761690440397609367L,
        451950190532227640L,
        -5815456944452977190L,
        -764130306143846512L,
        6419889081579466867L,
        4398197193823554358L,
        1464903517901841306L,
        -1506288216502917578L,
        8699886991841245818L,
        -3380656767633421271L,
        7278933867517081603L,
        3846023845717926438L,
        3407601931308300031L,
        1905732166195179585L,
        -108117922380454789L,
        -7519861222866947951L,
        -4972130809215364346L,
        -3021088137554827679L,
        8043600973137368044L,
        1434512585622151100L,
        1016884439578050772L,
        -8647546074167685968L,
        -8506558926671468128L,
        3841531502952176241L,
        4079049958054926435L,
        -5539805586862437496L,
        -7883676797140300306L,
        140190142986856503L,
        -2694098382777014524L,
        3353255930521897564L,
        2673408461261660763L,
        3333109393952734968L,
        4825771068490982684L,
        -1033017699452578891L,
        -6425096031606191368L,
        -3656030991400647770L,
        -8647425424751627856L,
        3478736455049888956L,
        16599786738656663L,
        3377618271754536312L,
        -7335129354324713170L,
        7006821265423054973L,
        -6604032179699952888L,
        1631574662141238563L,
        -6071005127816416359L,
        -160948602692816917L,
        2439292442953103260L,
        -7784485611988136914L,
        6406517206208162673L,
        -3111851768592482815L,
        614615425925214040L,
        -3556195010057046934L,
        -8360577559236335104L,
        -739612675357837554L,
        7772269085929933056L,
        301334074305006580L,
        -3173646397989105785L,
        -1841824288198551420L,
        1197412702727156776L,
        1316932784236645744L,
        -8257483426031914296L,
        -8846153844918116222L,
        -270342118487428514L,
        773674155630100861L,
        6037581810683864126L,
        -5245384017768292829L,
        -6666883988353617786L,
        3478725688838981124L,
        5546782277057101197L,
        1942226182099172621L,
        9102708557688253903L,
        9057469348188803174L,
        -4031312569229337466L,
        -9072824545184945687L,
        -3855790695273650364L,
        -653872491134432764L,
        -4080206884907012270L,
        3311573742599462083L,
        -269764702825894936L,
        -2766987632263151155L,
        6602535166262597916L,
        8827004592088991732L,
        1592583601190212294L,
        -3667633871893247038L,
        3486449146725138397L,
        4359563813403699388L,
        -4906066947120349290L,
        -4330401382584040114L,
        4803580003918030391L,
        -235574200222954516L,
        -1394367949090492983L,
        4737542241672587937L,
        -8856986665935885808L,
        1817303441870832271L,
        -7240430001371174281L,
        3145103301223918932L,
        3477270089202844825L,
        -4891077676842527034L,
        -6459627619991208890L,
        41856325087285886L,
        -1382249026510602312L,
        -2521070087258742337L,
        -2328070419092090664L,
        -5388262052233273295L,
        -5999142598302515399L,
        5176296022819478017L,
        -8067233187432429974L,
        8892405394182984962L,
        6981068794359751546L,
        -8944306852219597850L,
        -3031777418502459563L,
        2323104536537852233L,
        9124712187601380882L,
        9137253645240139706L,
        -8322892360260055499L,
        8407207834684403871L,
        7071881337439672371L,
        666653966378152392L,
        8872525458728668509L,
        -647279373040971223L,
        -4461978934957838597L,
        -8547295400497453835L,
        -8365906280976763859L,
        6814338820251845756L,
        -8627557778552684742L,
        1758840533399088383L,
        -6750756896288158784L,
        6395311215695067196L,
        392880119943578248L,
        -2323700597403900754L,
        -6462812207087401690L,
        -7551080163645560286L,
        -9100215524786223062L,
        2524911097994505678L,
        -2413500551656055296L,
        -3127527627858617051L,
        28303212483427471L,
        -6013779137277216469L,
        2384861921525290083L,
        8909147637811545615L,
        5899702029055461370L,
        -9169591182444006478L,
        -8983057629681813417L,
        -8861230054592033877L,
        8410267594044953503L,
        -6655030751206229874L,
        -6267989963116339301L,
        31106559957685675L,
        6344345657589688690L,
        8238818461566157187L,
        1502493109774801856L,
        3469110631126639783L,
        2128732756904122570L,
        -6695477927845519719L,
        2528367395277931442L,
        -329099838923643362L,
        -7212791470765971061L,
        -3974900257611008409L,
        -6102716001138106504L,
        5975084928006556639L,
        -2369197195204065449L,
        4487412260085465950L,
        1389218775050647169L,
        -210563038269997706L,
        -922257600076658999L,
        -1130043160249584113L,
        -6984222506141862497L,
        -2916447389269713954L,
        4788071442219355775L,
        -6019318505971293886L,
        -6494546725482896662L,
        -4363700123795407864L,
        -413176181805813162L,
        -318122404650466995L,
        -1599593833241308652L,
        2190631003347506794L,
        -4995495324074558376L,
        4218530180585703693L,
        6649230517887455428L,
        -2433122371099559642L,
        -2330882739734692624L,
        8573791066461702522L,
        6970674048709593485L,
        4649249821199623523L,
        7311119499624527481L,
        4680575275115317809L,
        -5342935153571170373L,
        -3116361043570347782L,
        7648138161603070701L,
        -7868309300294741850L,
        2168590009590153900L,
        1490446147749965016L,
        -1283008494190853295L,
        -3544718913503298823L,
        -6534742186538530460L,
        8888468655599547353L,
        2087090769425642258L,
        7827670472827763897L,
        5012267323158846243L,
        -7741892984083231808L,
        -3464875091939295355L,
        6758409038153561859L,
        7975975224774285641L,
        -1784622809729929558L,
        -2393574261519991129L,
        -6610200673241373487L,
        7928053024182934824L,
        -5277949614542058690L,
        -7247922641677687748L,
        2028835673665475733L,
        -1777986108022598102L,
        -3172999022236468759L,
        -6985445521140497368L,
        -5695545706582407660L,
        -4309483684393591256L,
        -3401005720978902388L,
        1936529279105293703L,
        -8305374440470863587L,
        16315157402312675L,
        8569329186502607478L,
        3622231363337094235L,
        3976043631923911750L,
        2180152175451630095L,
        6056371270826025517L,
        8139874952265577458L,
        -6194153431530741778L,
        -8577895877125457083L,
        -790303016491014290L,
        1748735841046690659L,
        -4993780459372161153L,
        5287205275463538041L,
        -6049243002864424978L,
        6094628311576432102L,
        1723598070277281371L,
        -2030013138372962335L,
        581254472737031976L,
        2883452134968639016L,
        7463603388570246862L,
        8269801870818255538L,
        -2721070413905263091L,
        2457346831596438200L,
        -8372860384678057653L,
        -3210661626851492038L,
        -2431103856629925112L,
        5898720385544051772L,
        -3594404508869529256L,
        7736856796149395645L,
        4344265719410640477L,
        -1183171608899090204L,
        -2897986809520726521L,
        8305011769957443997L,
        4795229490900606846L,
        -4075891264094240154L,
        -9041912526913309251L,
        4789314080457888127L,
        -7212841446169150525L,
        7614738331996330350L,
        -2806024093029511670L,
        7475540037729743195L,
        -208315385211774637L,
        -1296899054609750506L,
        2821295913762275529L,
        -8879859100383139039L,
        -1026712876851747915L,
        -8740379160227472449L,
        292511471974483828L,
        -6882168959749241763L,
        -1890145082814895769L,
        -4562439963586418047L,
        -4665008591354792917L,
        -390136948977793829L,
        2489571518656765596L,
        -4606174591656425576L,
        3915092809925941183L,
        9047840161614493431L,
        -3633022588647399004L,
        6942969346669131736L,
        -6694490826379010151L,
        1324301462784912541L,
        -131359952912781984L,
        7699402503208720283L,
        5622479144398033413L,
        6967949859886140765L,
        -4032338302965368957L,
        -5963416332716588452L,
        -3560763554691360091L,
        1005099059372059445L,
        -3613443378421770201L,
        8186020547591708957L,
        -4239294927646312066L,
        8486099747374488535L,
        -8232895327339487639L,
        -326238615306018799L,
        3757565981936253922L,
        6778212967891221904L,
        3207873024341334560L,
        -7523175474658440577L,
        -2278786475151426330L,
        8466836425666023990L,
        -4582382447378461393L,
        -6578561293342792192L,
        -5704990689206920025L,
        -2389743517442092247L,
        -4253115007157692595L,
        -8929813271704719513L,
        5099815622657901533L,
        -1568292864717899125L,
        -8985414394814021973L,
        -2456273479716732497L,
        6294081109509751388L,
        3028102295678003049L,
        3539887196501896592L,
        -1575691248319511603L,
        8966746464734142359L,
        -6995340021363899582L,
        -7800639148789851713L,
        -8224260699176813192L,
        -1938885039339650999L,
        -6014303778691459857L,
        6353855006008545499L,
        682899654558677209L,
        -227004043734081415L,
        4175445164667592327L,
        -5892774236575987682L,
        -1054851063871573686L,
        7378945432015543779L,
        -9025847508399685521L,
        8507123498478659641L,
        2634415008322296937L,
        8499997933084393618L,
        -2343091536239164797L,
        4943477958300830784L,
        -5716138953695402001L,
        3654955422185200330L,
        -3855175918674625767L,
        2942012910816921425L,
        2135649495450577190L,
        2489749270232932598L,
        3075573886722866022L,
        4741621495679187373L,
        -2533070995420675111L,
        8016604412923285952L,
        3655782710664522385L,
        -331575483966243030L,
        5563239881147789110L,
        -3536395547713373675L,
        7913843468604629821L,
        5809470005231530425L,
        -4975803751638349405L,
        4232625781800052755L,
        6732116987820363984L,
        8254350875123440214L,
        8678768551976889459L,
        -7648934972481089708L,
        3723349959659703109L,
        6247511200357726796L,
        8031315762976704315L,
        1080967314182171216L,
        8561519680933409213L,
        -4881637187705091353L,
        -1748916130722404954L,
        -427313373952636003L,
        -3301131413273237404L,
        -1569066768226212095L,
        8869766464584553885L,
        -1961352451311113660L,
        266916750915890668L,
        -6043655819212470095L,
        6958639066650934551L,
        -7491396823220354282L,
        -5706244121092248742L,
        2058565949849149623L,
        3917621928532856993L,
        -5285914392340260969L,
        -168243632194730904L,
        6675032706416988527L,
        -1840378443456062350L,
        -7806824272957817769L,
        112697577821879088L,
        -4000943011066585594L,
        2818144475816625033L,
        -4440191780652473075L,
        5290425627535986178L,
        3439261124616388302L,
        -8796398171847802394L,
        2206978116305603858L,
        8337592206550774275L,
        4830967377052828283L,
        -3675693473899758315L,
        -3108840240467865078L,
        -9161001698053177695L,
        -2297481807921754784L,
        6805568340065774603L,
        -3391258244299519321L,
        -749159983993382844L,
        7062232236008961533L,
        8333689744281941417L,
        2017452506567785764L,
        -8052757095945795921L,
        -8679429010410768062L,
        -1669769454675143183L,
        1021385511452112192L,
        2735516449063469298L,
        -8689901914251408811L,
        -2768144086776923110L,
        -2202724657096524491L,
        2163604710661256429L,
        440602864681103213L,
        5959058277963677044L,
        -1962091009504664018L,
        7850741655764818791L,
        5642260926720676901L,
        5408898583245429104L,
        7038508131990238779L,
        3607846536923261161L,
        -845982521020496047L,
        -2264177099345700631L,
        20359578843289632L,
        525387587427138539L,
        7263487202515015380L,
        -6022234835374448888L,
        8771216931413507676L,
        971990022205374619L,
        7021724132924988656L,
        7039083302981701109L,
        4204637396958585348L,
        4188090497012985750L,
        4376437258965105347L,
        739302444316090012L,
        -6525785024015383256L,
        -5902189526714689919L,
        -2086878366253206692L,
        -4180968549067503810L,
        520335013266400476L,
        2183825622398646326L,
        -5564778184706962647L,
        8650796499367868629L,
        6133888236137780152L,
        3302115923459930139L,
        -5937793818041183192L,
        6136033530618946018L,
        -7445428676723525682L,
        5094265850028691255L,
        -7682752822893337463L,
        2360556001507188553L,
        4691951638183144722L,
        -3830875212384544737L,
        1394869612670592029L,
        6721262565314161917L,
        -4730012123689790930L,
        6010638756354340578L,
        4031121074915162261L,
        -8189520056149158263L,
        5699902859355185981L,
        4409202837690861395L,
        -4004308357657832082L,
        324207669529782050L,
        4535231947997767569L,
        -5065771485887356402L,
        -6148808728279097894L,
        -8715608844307329735L,
        5490745425133075827L,
        -367120062639329977L,
        -2362408583935145326L,
        4249838900346469450L,
        3354190632527652547L,
        8650024540421064319L,
        1390121173325989151L,
        4407722572355267530L,
        1305681461138455335L,
        6099199904041118254L,
        -8896625676033180325L,
        839449618742345953L,
        2108603209434414606L,
        -6476270516642075823L,
        -5906022157324316338L,
        1786301043676368787L,
        -734452738262121042L,
        9129473457452515473L,
        -4270195884135199090L,
        2788589943226781334L,
        854782643768940534L,
        -6834471408050497483L,
        939538118216915189L,
        -752821676934059887L,
        -3925004345170320451L,
        -8932717110665275243L,
        -7095359027251951606L,
        7643915390524006789L,
        -1927702468531393748L,
        -7842897924029333727L,
        -2005262014091460598L,
        -1463327401577112707L,
        -1828846898463724235L,
        3421730855491731072L,
        -2572236860591883027L,
        -7674305242810151190L,
        -2921293091126082953L,
        -2112272959722776468L,
        5994003596842057813L,
        -1403058426817118276L,
        8847371890841156208L,
        -1502366106598365249L,
        -7223092882480940906L,
        -6863117362364849357L,
        -6486108986580560522L,
        5841273524403391013L,
        -3945405895274884805L,
        -8374909777151107129L,
        53304606899741030L,
        4615695750455104916L,
        -7114565447402461330L,
        -4643391974067777176L,
        -6418268910872627783L,
        -6758153388660633319L,
        3883028944583062885L,
        -8717746570766619134L,
        -2916775336586188872L,
        -8074909175856917009L,
        3525909159494548665L,
        -6434174792604831222L,
        -7504160568097417051L,
        2001874122000013346L,
        7613526286976804831L,
        2464361623791150786L,
        -2129233914182690890L,
        3209269703778816910L,
        -8010470561318389930L,
        -6082567480910205891L,
        2027383934435049120L,
        1676758519641328373L,
        -8606433480037293753L,
        -566732216614183074L,
        -7052986422070927806L,
        6759547283385841440L,
        -6753685466722762948L,
        -5378389309155242913L,
        -6627920366497701138L,
        6374316983929412845L,
        -2482225971676290230L,
        -4599659905021815233L,
        -5751984843591190616L,
        4511247687213585367L,
        -2476604560440409237L,
        -114383761088915611L,
        6450270090553874467L,
        -5846154312963348311L,
        -8623677702310698753L,
        2393721797395064071L,
        -1818986917546634465L,
        4707876179516363283L,
        4194493322864848953L,
        -5862485881220479014L,
        -7779495775631012707L,
        1429810574540763592L,
        6243218102267301238L,
        3112138729863740057L,
        -7917371226803982155L,
        -3846717136498455001L,
        7941035918354784272L,
        6054418261287151348L,
        2241054973421403682L,
        2108883531438643423L,
        -5118957553064582950L,
        6840064986465667257L,
        1701114564579911641L,
        7866363409355715940L,
        -7811750917271050315L,
        4258900268014843560L,
        2910381907881532246L,
        -7407853986731113039L,
        -1164923521782235469L,
        5071804620493814073L,
        -5221820283650092409L,
        -2085943650488071863L,
        -4691931711041122390L,
        5141081400574039177L,
        4412440312825017190L,
        865265935918874733L,
        -3162395727240029817L,
        2583523221463203765L,
        -2230477299980342161L,
        1259435039139370849L,
        1365261303243408423L,
        123583301618412419L,
        -3355292811340436088L,
        -1727563074004288880L,
        -8133802905721685614L,
        -6552132843349831539L,
        -1887405913282768589L,
        579752349959797974L,
        -30747658301300128L,
        -927889569251598514L,
        -598220531698559825L,
        2933084143972969973L,
        1881216270838286368L,
        -8591542187284077544L,
        -2746195460013203014L,
        -4115580643333612767L,
        -2101698311751878965L,
        5245788963589320347L,
        4270169879132043112L,
        -3833918223343506508L,
        942125237032353686L,
        -6956461266653105716L,
        7913560303134573539L,
        8866560449264109272L,
        1772637526204651639L,
        6195153795464161383L,
        8993984678406525057L,
        -4726061955654809508L,
        3735265735496936434L,
        -6130568352441921952L,
        914728955300562981L,
        -4063651775288818415L,
        7163723758837672393L,
        6047067511151254132L,
        -85970498549649175L,
        -9052941052352548153L,
        4240460500266637523L,
        5163784737021140449L,
        -4716331032104787044L,
        5489681070460969049L,
        -5530595986986981098L,
        -5278261126239207272L,
        -7077173381332846300L,
        -7391343501975496029L,
        7813143400706294876L,
        -829387125962495297L,
        4670865291775900382L,
        9020186365194420955L,
        6433988241346982419L,
        5456431567263680486L,
        577121399356211412L,
        4315536067351582084L,
        -2651573533423085833L,
        7729294536223119956L,
        823406537236537172L,
        -3197784427651817583L,
        3073787778728381013L,
        -6145117092298484037L,
        825473167547740369L,
        -6384124143193023811L,
        6743275140960345819L,
        -6607284289920060697L,
        6113681357284605143L,
        7689553101083010355L,
        7733899730013301027L,
        2492677562497092915L,
        4728492123871940113L,
        6678104742805246060L,
        5109599002723184885L,
        1552728313401432217L,
        4260747280707230837L,
        -593097661878040944L,
        -5924961133842904285L,
        4723826630465061674L,
        268913169937480109L,
        2542402711842995289L,
        -1051287017878596624L,
        -444276555201322762L,
        7942493575456109374L,
        3061527869577259411L,
        4193974852415330113L,
        -1301232869890041839L,
        7435225101451773213L,
        -9001651199021564702L,
        6863640439001667225L,
        5554839952330233864L,
        1018125067733426387L,
        5106471895041805751L,
        6755291848201476506L,
        204883989932056912L,
        -2918800393497291312L,
        -361123969592716017L,
        -3248350955607675877L,
        -3093925735525511829L,
        3287300458522620431L,
        200614927215937352L,
        -3637256374159515512L,
        -7088130147825572228L,
        -1454877327154711975L,
        200290346546176890L,
        -5273070491678100412L,
        9126524747081374017L,
        -2469359255503465276L,
        -5451210609015247756L,
        1345843315473598819L,
        5658367014892979201L,
        -418967882289891730L,
        -8563171322679387325L,
        3076280980125057136L,
        7452927116456175377L,
        7779645020063005680L,
        -1134607767941445560L,
        -683371285258284330L,
        3622514687262401912L,
        2057491561658004489L,
        1274581986030567362L,
        -7605424030712005369L,
        -1904495568695037810L,
        7235082449551676221L,
        7691343848640211912L,
        -2574437254990241198L,
        7672749762009557292L,
    };
}
